import androidx.compose.foundation.Image
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.*
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.*
import androidx.compose.runtime.*
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
@Composable
fun ThreeButtonsWithImageToggle() {
var isImage1Visible by remember { mutableStateOf(true) } // 控制图片切换的状态
// 根布局
Column(
modifier = Modifier
.fillMaxSize()
.padding(16.dp),
verticalArrangement = Arrangement.SpaceBetween,
horizontalAlignment = Alignment.CenterHorizontally
) {
// 显示图片
Box(
modifier = Modifier
.fillMaxWidth()
.height(200.dp),
contentAlignment = Alignment.Center
) {
if (isImage1Visible) {
Image(
painter = painterResource(id = R.drawable.image1), // 替换为实际图片资源
contentDescription = "Image 1",
modifier = Modifier.fillMaxSize()
)
} else {
Image(
painter = painterResource(id = R.drawable.image2), // 替换为实际图片资源
contentDescription = "Image 2",
modifier = Modifier.fillMaxSize()
)
}
}
// 按钮区域
Row(
modifier = Modifier.fillMaxWidth(),
horizontalArrangement = Arrangement.SpaceBetween,
verticalAlignment = Alignment.CenterVertically
) {
// 左边按钮
Button(
onClick = { /* TODO: 第一个按钮触发的操作 */ },
modifier = Modifier
.size(138.dp, 62.dp),
shape = RoundedCornerShape(8.dp),
colors = ButtonDefaults.buttonColors(containerColor = Color.Gray)
) {
Text("按钮1", fontSize = 16.sp, color = Color.White)
}
// 右边按钮
Row {
Button(
onClick = { isImage1Visible = !isImage1Visible }, // 切换图片
modifier = Modifier
.size(138.dp, 62.dp),
shape = RoundedCornerShape(8.dp),
colors = ButtonDefaults.buttonColors(containerColor = Color.Blue)
) {
Text("按钮2", fontSize = 16.sp, color = Color.White)
}
Spacer(modifier = Modifier.width(8.dp)) // 按钮间距
Button(
onClick = { /* TODO: 第三个按钮触发的操作 */ },
modifier = Modifier
.size(138.dp, 62.dp),
shape = RoundedCornerShape(8.dp),
colors = ButtonDefaults.buttonColors(containerColor = Color.Red)
) {
Text("按钮3", fontSize = 16.sp, color = Color.White)
}
}
}
}
}