簡體   English   中英

Android Google Maps Marker問題

[英]android Google maps marker problme

我有以下問題,我添加了幾個標記,其中50%的黑點和50%的紅點作為圖標,但是其中90%的黑點出現了。當我按下它們並重新打開時顯示為紅色。為什么?

謝謝

PS這是代碼

mMap = mapFragment.getMap();
StationAccess stationAccess = new StationAccess(getApplicationContext());
List<Station> stationList = stationAccess.getByBusName(getTitle().toString());
if(s.getRouteType().toString().contains("TUR")){
    mMap.addMarker(new MarkerOptions().position(new LatLng(s.getLatitude(),s.getLongitude())).title(s.getRouteType().toString()).icon(BitmapDescriptorFactory.fromResource(R.drawable.punct_negru)));
            }
if(s.getRouteType().toString().contains("RETUR")){
    mMap.addMarker(new MarkerOptions().position(new LatLng(s.getLatitude(),s.getLongitude())).title(s.getRouteType().toString()).icon(BitmapDescriptorFactory.fromResource(R.drawable.punct_rosu)));
            }

這是因為“ RETUR”還包含字符串“ TUR”。 因此,對於第二個if語句為true的任何getRouteType字符串,對於第一個if語句也為true。

我建議不要在s.getRouteType()上進行字符串比較。 我不熟悉您的課程結構,但如果是枚舉,它可能看起來像

if (s.getRouteType().equals(RouteType.*Something*)) {
    mMap.addMarker(new MarkerOptions().position(new LatLng(s.getLatitude(),s.getLongitude())).title(s.getRouteType().toString()).icon(BitmapDescriptorFactory.fromResource(R.drawable.punct_negru)));
} else if (s.getRouteType().equals(RouteType.*SomethingElse*)) {
    mMap.addMarker(new MarkerOptions().position(new LatLng(s.getLatitude(),s.getLongitude())).title(s.getRouteType().toString()).icon(BitmapDescriptorFactory.fromResource(R.drawable.punct_rosu)));
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM