Fan*_*dez 3 android google-maps android-jetpack-compose google-maps-compose
我正在开发一个简单的地图应用程序,我正在尝试使GoogleMap可组合的缩放动画 持续时间超过 1000 毫秒。
到目前为止我有这个代码:
Column( ... ) {
val destinationLatLng = LatLng(destination.lat, destination.lng)
val cameraPositionState = rememberCameraPositionState {
position = CameraPosition.fromLatLngZoom(destinationLatLng, 15f)
}
GoogleMap(
modifier = Modifier.fillMaxSize(),
cameraPositionState = cameraPositionState
//stuck on animating this
)
}
Run Code Online (Sandbox Code Playgroud)
在旧的 GoogleMap 视图中,我可以使用此示例代码为相机设置动画。
googleMap.animateCamera(CameraUpdateFactory.newCameraPosition), 1000, null)
Run Code Online (Sandbox Code Playgroud)
但是,在 Compose 中,我无法重新设计它来实现放大动画。
我已经查看了Maps SDK和Maps Compose 库的 Compose文档,但我仍然陷入困境。
请告诉我是否有办法在 Compose GoogleMap 中为相机设置动画
MS2*_*099 10
如果在组合可组合项时它是一次且仅有一次动画,请使用 LaunchEffect(key1 = true),如下面的代码所示。
val initialZoom = 6f
val finalZoom = 15f
val destinationLatLng = LatLng(destination.lat, destination.lng)
val cameraPositionState = rememberCameraPositionState {
position = CameraPosition.fromLatLngZoom(destinationLatLng, initialZoom)
}
LaunchedEffect(key1 = true) {
cameraPositionState.animate(
update = CameraUpdateFactory.newCameraPosition(
CameraPosition(destinationLatLng, finalZoom, 0f, 0f)
),
durationMs = 1000
)
}
GoogleMap(
modifier = Modifier.fillMaxSize(),
cameraPositionState = cameraPositionState
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2950 次 |
| 最近记录: |