[英]Cannot create Button in Jetpack Compose
我在互联网上的大部分教程中发现的是:
@Composable
fun addButton() {
Button(text = "I'm a Compose Button")
}
但是 android studio 给我一个错误:需要类型不匹配:() -> 单位,找到:字符串。 我不知道如何解决这个问题。
根据文档,要创建Button您必须在RowScope内指定文本:
Button(onClick = {/* To execute when button is clicked */}) {
Text("I'm a Compose Button")
}
然后通过 androidx.ui.foundation package 中定义的Text() function 设置文本。
您可以在 material-ui 文档中找到有关它们的更多信息: https://developer.android.com/reference/kotlin/androidx/ui/material/package-summ
这就是在 Jetpack compose 中添加 Button 的方法。
Button(onClick = {/*Handle click action */}, modifier = Modifier.padding(16.dp)) {
Text(
text = "Jetpack Compose Button"
)
}
参考:
[1] https://developer.android.com/reference/kotlin/androidx/compose/material/package-summary#button
使用打击代码
Button(onClick {/* your onClick listener */}){
Text("I'm a Compose Button")
}
我知道这看起来不太好,但你必须这样做
Button(onClick = {handle Click Action })
{
Text(text = "Your Button Text")
}
那些不熟悉撰写的人可以像这样使用按钮简单按钮
@Composable
fun MyButton() {
Column(
modifier = Modifier.fillMaxWidth().fillMaxHeight(),
verticalArrangement = Arrangement.Center,
horizontalAlignment = Alignment.CenterHorizontally
) {
Button(
onClick = {},
modifier = Modifier.padding(all = Dp(10f)),
enabled = true,
border = BorderStroke(width = 1.dp, brush = SolidColor(Color.Blue))
) {
Text(text = "I am a compose button", color = Color.White)
}
}
}
您没有使用语法,
你这个代码:
Button(onClick = {/*Handle click action */} ){
Text(
text = "Write the button text here"
)
}
如果你想使用修饰符然后参考这个,
Button(onClick = {/*Handle click action */}, modifier = Modifier.padding(16.dp)) {
Text(
text = "Write the button text here"
)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.