【发布时间】:2013-11-08 15:43:30
【问题描述】:
我想在谷歌地图上显示多个标记。我的 latlng 坐标是从 Parse 数据库中获取的,但我看不到标记。
我的第二个问题是我想显示一个带有标记的餐厅名称的标题,我该怎么做?
这是我的代码:
私有类 putMarker 扩展 AsyncTask> { @覆盖 受保护的 ArrayList doInBackground(Void... 参数) { // TODO 自动生成的方法存根 尝试 { Toast.makeText(getApplicationContext(), 经度 + " " + 纬度,Toast.LENGTH_SHORT).show(); ParseQuery 查询 = 新 ParseQuery( “细节”); ParseGeoPoint myGeoPint = 新 ParseGeoPoint(纬度, 经度); query.whereNear("位置", myGeoPint); 查询.setLimit(10); ob = 查询.find(); for (ParseObject resObj : ob) { ParseGeoPoint 位置 = resObj .getParseGeoPoint("位置"); restaurantName = (String) resObj.get("RestaurantName"); LatLng resLatLng = new LatLng(location.getLatitude(), location.getLongitude()); Toast.makeText(getApplicationContext(), restaurantName, Toast.LENGTH_SHORT) 。显示(); PintList.add(resLatLng); } } 捕捉(异常 e){ // TODO: 处理异常 } 返回点列表; } 受保护的无效 onPostExecute(ArrayList latlngList){ for(LatLng res: latlngList) { MarkerOptions markerOptions = new MarkerOptions(); markerOptions.position(res); markerOptions.icon(BitmapDescriptorFactory .defaultMarker(BitmapDescriptorFactory.HUE_GREEN)); googleMap.addMarker(markerOptions); } } }请帮帮我。
【问题讨论】:
-
您无法从
doInbackground()更新用户界面。取出吐司 -
非常感谢我现在可以看到标记,但是我如何将 latlng 和字符串发送到我的 onPostExecute() 方法。
-
您可以使用字符串生成器并返回结果。返回的结果是 onPostexecute 的参数
-
请不要用勺子喂食。
-
请你发一个例子。我想把 latlng 和 string 一起发送,这样我就可以在那个标记上放一个标题。
标签: android google-maps