2016-12-27 7 views
0

3つのURLを使用してデータJSONと3つのボタンをロードしています。これが私の活動であるクリックしたときにGoogleマップでマーカーを表示/非表示にする方法

Button btnAll, btnPetro, btnRescue; 

public void displaySelectedMarkers(View view) { 

    btnAll = (Button) findViewById(R.id.btnAll); 
    btnPetro = (Button) findViewById(R.id.btnPetro); 
    btnRescue = (Button) findViewById(R.id.btnRescue); 

    View.OnClickListener listener = new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      if (view.equals(btnAll)) { 
       Log.d("Get All marker ", "Button get All was clicked "); 
       get_all_marker_by_area(); 
      } 
      else if (view.equals(btnPetro)) { 
       Log.d("Get All marker petro ", "Button get All petro was clicked "); 
       get_all_marker_by_petro(); 
      } 
      else if (view.equals(btnRescue)) { 
       Log.d("Get All marker Rescue", "Button get All Rescue was clicked "); 
       get_all_marker_by_rescue(); 
      } 
      else { 
       // get_all_marker_by_area();  // call and get all marker by area 
      } 
     } 
    }; 

    btnPetro.setOnClickListener(listener); 
    btnRescue.setOnClickListener(listener); 
} 

:私は(駅の石油や救助を含みます)、私はボタンをクリックすると、「すべて」を望む、それはすべてのマーカーを表示する、または残りのボタンをクリックします、である対応するマーカーが表示されます'All'または 'Petro'または 'Rescue'ボタンをクリックすると、Googleマップのjsonのマーカーが表示されないようです。

ボタンをクリックしたときGoogleでマーカーをフィルタする方法はありますか?どうもありがとう

答えて

0

あなたがマーカーを非表示にするには、次の方法を使用することができます。

markerN.setVisible(false); 

だからあなたがあなたのマーカーのArrayListまたはListを持っている場合はループを呼び出し、フラグを使用して表示を切り替えることができます。

+0

こんにちは@sinapda:考えていただきありがとうございます。多分displaySelectedMarkersメソッドでマーカーのループを作成する必要があります –

+0

私はもっと欲しいです。 3つのURLを使用すると、1つのメソッドまたは3つのメソッドを作成する必要があります。 –

+0

表示する必要があるマーカーの種類の追加引数を使用して1つのメソッドを作成できます。 'showMarkers(int TYPE)'のように – sinapda

関連する問題