Tár*_*aga 16 android google-maps google-maps-markers google-maps-api-2
我想在我的地图中添加多个标记,但我不知道如何.
目前,我正在使用它,它正常工作:
Marker m1 = googleMap.addMarker(new MarkerOptions()
.position(new LatLng(38.609556, -1.139637))
.anchor(0.5f, 0.5f)
.title("Title1")
.snippet("Snippet1")
.icon(BitmapDescriptorFactory.fromResource(R.drawable.logo1)));
Marker m2 = googleMap.addMarker(new MarkerOptions()
.position(new LatLng(40.4272414,-3.7020037))
.anchor(0.5f, 0.5f)
.title("Title2")
.snippet("Snippet2")
.icon(BitmapDescriptorFactory.fromResource(R.drawable.logo2)));
Marker m3 = googleMap.addMarker(new MarkerOptions()
.position(new LatLng(43.2568193,-2.9225534))
.anchor(0.5f, 0.5f)
.title("Title3")
.snippet("Snippet3")
.icon(BitmapDescriptorFactory.fromResource(R.drawable.logo3)));
Run Code Online (Sandbox Code Playgroud)
但是当我想在我的地图中添加300个标记时,就会出现问题.一个接一个地做这件事非常烦人.
有没有办法从数组或任何东西读取标记?
另一个问题:我可以从外部文件中读取标记,因此我可以添加或更新标记而无需触及应用程序代码吗?
谢谢.
小智 54
ArrayList<MarkerData> markersArray = new ArrayList<MarkerData>();
for(int i = 0 ; i < markersArray.size() ; i++) {
createMarker(markersArray.get(i).getLatitude(), markersArray.get(i).getLongitude(), markersArray.get(i).getTitle(), markersArray.get(i).getSnippet(), markersArray.get(i).getIconResID());
}
protected Marker createMarker(double latitude, double longitude, String title, String snippet, int iconResID) {
return googleMap.addMarker(new MarkerOptions()
.position(new LatLng(latitude, longitude))
.anchor(0.5f, 0.5f)
.title(title)
.snippet(snippet)
.icon(BitmapDescriptorFactory.fromResource(iconResID)));
}
Run Code Online (Sandbox Code Playgroud)
sir*_*cac 17
使用 MarkerOptions
private GoogleMap googleMap;
private MarkerOptions options = new MarkerOptions();
private ArrayList<LatLng> latlngs = new ArrayList<>();
Run Code Online (Sandbox Code Playgroud)
您可以添加到latlngs列表中,
latlngs.add(new LatLng(12.334343, 33.43434)); //some latitude and logitude value
Run Code Online (Sandbox Code Playgroud)
然后,使用for循环将它们设置在地图上.
for (LatLng point : latlngs) {
options.position(point);
options.title("someTitle");
options.snippet("someDesc");
googleMap.addMarker(options);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
64977 次 |
| 最近记录: |