kotlin 在Jetpack合成Map合成库中自定义myLocationButton

of1yzvn4  于 7个月前  发布在  Kotlin
关注(0)|答案(1)|浏览(74)

我正在开发一个使用Jetpack Compose和Map Compose库的应用程序。然而,我面临着库提供的默认myLocationButton的限制。我想通过更改其图标,调整其位置以及可能添加其他自定义内容来自定义此按钮。我想知道是否有一种方法可以在Map Compose库中实现此功能。或者,我想知道是否有一种方法可以在使用自定义实现的同时调用标准的myLocationButton。
任何指导或代码示例将不胜感激。This is what the standard button looks like.

hs1rzwqc

hs1rzwqc1#

你可以试试这个:

@Composable
fun MyFab2(
    onClick: () -> Unit,
    modifier: Modifier = Modifier,
    content: @Composable () -> Unit,
) {

    val iconPainter = painterResource(id = R.drawable.current_location_icon)

    FloatingActionButton(
        onClick = onClick,
        modifier = modifier,
    ) {
        content()
        Icon(
            painter = iconPainter,
            contentDescription = "Add FAB",
            tint = Color.Black,
        )
    }

}

字符串
//然后在一个Box中,例如:

Box(modifier = Modifier.fillMaxSize()) {

                    MyGoogleMap()

                    MyFab2(
                        onClick = { fabOnClick() },
                        content = {
                            // Add FAB content here
                        },
                        modifier = Modifier
                            .size(82.dp)
                            .padding(24.dp)
                            .clip(shape = MaterialTheme.shapes.medium)
                            .align(Alignment.TopEnd)
                    )
                }


//你现在可以做任何你喜欢的事情,就像你对一个简单的FAB一样。//那么,你得到的是:x1c 0d1x

相关问题