[英]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.