这只是简单效果

Button(onClick = {
showToast("点击了")
}, Modifier.padding(vertical = 9.dp)) {
Text(text = "文字")
}
Button(
onClick = {
showToast("点击了")
},
Modifier.padding(vertical = 9.dp),
border = BorderStroke(2.dp, Color.Green),//边框颜色
shape = RoundedCornerShape(
topStart = 5.dp,
topEnd = 6.dp,
bottomEnd = 10.dp,
bottomStart = 10.dp
)
//也可以设置形状
) {
Text(text = "形状")
}
简单来说就是一个布局可以随意了
只是更改代码位置
Button(onClick = {
showToast("点击了")
}, Modifier.padding(vertical = 9.dp)) {
Column(
) {
Image(
painter = rememberImagePainter(data = R.drawable.bg_iamge),
contentDescription = "",
Modifier
.clip(CircleShape)
.size(30.dp),
contentScale = ContentScale.Crop,
)
// 添加间隔
Spacer(Modifier.size(ButtonDefaults.IconSpacing))
Text(text = "在上")
}
}
Button(onClick = { println("点击了按钮")}){
Icon(Icons.Default.Search,contentDescription = null)
Text(text = "测试")
}
2.还可以设置 点击状态变换shap 等这个可以拓展很多一切靠想象

//如果是按压状态则是切角形状,否则则是圆角形状
val myShape = if(pressState.value) CutCornerShape(10.dp) else RoundedCornerShape(10.dp)
Column(
Modifier.padding(20.dp)
) {
Button(
onClick = { /*TODO*/ },
//设置我们定义的shape
shape = myShape,
//设置创建的MutableInteractionSource对象
interactionSource = myInteractionSource
) {
Text("你好")
}
}
参考链接:
图标(Icon) 按钮(Button) 输入框(TextField) 的使用
Jetpack Compose - Button
Android Compose Button按钮控件