在 Android Studio 中使用动画更新标记位置
Posted
技术标签:
【中文标题】在 Android Studio 中使用动画更新标记位置【英文标题】:Update Marker position with Animation in Android Studio 【发布时间】:2019-12-22 17:06:36 【问题描述】:我已成功从数据库中存储的一些数据中获取纬度和经度。但我无法更新地图上的标记位置。请有人帮助我提供代码或如何做到这一点。
【问题讨论】:
【参考方案1】:使用CameraUpdate
试试这个,
LatLng coordinate = new LatLng(lat, lng); //Store these lat lng values somewhere. These should be constant.
CameraUpdate location = CameraUpdateFactory.newLatLngZoom(coordinate, 15);
mMap.animateCamera(location);
或者也可以用这个,
LatLng latLng = new LatLng(location.getLatitude(), location.getLongitude());
MarkerOptions markerOptions = new MarkerOptions();
markerOptions.position(latLng);
markerOptions.title(totalAddress); //Here Total Address is address which you want to show on marker
mMap.clear();
markerOptions.icon(
BitmapDescriptorFactory
.defaultMarker(BitmapDescriptorFactory.HUE_AZURE));
markerOptions.getPosition();
mCurrLocationMarker = mMap.addMarker(markerOptions);
mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));
mMap.animateCamera(CameraUpdateFactory.zoomTo(11));
【讨论】:
是 getPosition() 方法来获取我正在测试地图的设备位置吗?? 不,其实我觉得你已经有了你在帖子中提到的纬度和经度。这个markerOptions.getPosition()
将返回我们使用markerOptions.position(latLng)
在它上面设置的那个。那不是设备的当前位置。以上是关于在 Android Studio 中使用动画更新标记位置的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio Flutter Hot Reload热加载无效