2012-04-22 3 views
0

私はMapViewを持っています。このMapView内にMapOverlaysがあります。 MapOverlaysにはマップ上にプロットされた2つのアイコンがあります。緑色と赤色があります。これらをOPENとCLOSEDインジケータにしたいと思います。"オープン"と "クローズ"インジケータを作成するにはどうすればよいですか?

私が設定した「時間」(例えばmyTime)を読んで、それが開いているか閉じているかを見るためにSystemTimeでチェックしたいと思います。

擬似コード:IF myTime == SystemTime {店舗インジケータが緑色マーカーに変わります} ELSE {店舗インジケータがRED市場に変わります}。

MapViewに追加したい2店舗のタイミングがあります。

どうすればいいですか?ここで

は、明確化のための画像です:

enter image description here

public void mapOverlayItems() { 

    // Creates a marker based on lat/long values on MapView 

      // DIVIDER markerGREEN 
    MapView mapView = (MapView) findViewById(R.id.mapView); 
    mapOverlays = mapView.getOverlays(); 
    Drawable drawableBar = getResources().getDrawable(
      R.drawable.markergreen); 
    mapOverlayBar = new MapOverlayActivity(drawableBar, mapView); 


    GeoPoint sirius = new GeoPoint((int) (52.63274 * 1E6), 
      (int) (-1.13145 * 1E6)); 
    OverlayItem siriusbaricon = new OverlayItem(sirius, "Sirius", "Bar"); 
    mapOverlayBar.addOverlay(siriusbaricon); 

    mapOverlays.add(mapOverlayBar); 
    mapView.invalidate(); 

    //DIVIDER markerRed 

Drawable drawableBank = getResources() 
      .getDrawable(R.drawable.markerred); 
    mapOverlayBanks = new MapOverlayActivity(drawableBank, mapView); 
    GeoPoint natwest = new GeoPoint((int) (52.63440 * 1E6), 
      (int) (-1.1314 * 1E6)); 
    OverlayItem natwesticon = new OverlayItem(natwest, "Natwest", "Bank"); 
    mapOverlayBanks.addOverlay(natwesticon); 
    mapOverlays.add(mapOverlayBanks); 
    mapView.invalidate(); 
} 

はお時間をいただき、ありがとうございます。

+0

私は変更を行うコードを貼り付けることができますか? –

+0

上に貼り付けられたコード。 Agarwalに返信ありがとうございました。 – DesignAndCode

+0

追加するだけで、必要に応じて説明が分かります。BalloonItemizedOverlayを使用しています。これがまったく役に立ったら。 – DesignAndCode

答えて

2

次のコードを使用して、マップ上の任意のポイントにマーカーを設定できます。

int lat = some number; 
int lng = some number; 

GeoPoint point = new GeoPoint(lat, lng); 

MapView map = (MapView) findViewById(R.id.mapView); 
List<Overlay> overlays = map.getOverlays(); 
overlays.add(new DrawableMapOverlay(this, point, R.drawable.mapmarker)); 

最後の行は実際にマップ上にマーカーを配置します。最後の行を "if/else"ステートメントで折り返して、独自のドロウアブルを選択できるようにします。お役に立てれば。

関連する問題