2

是否可以DropdownMenu在我的示例中居中?或者在我点击或点击的任何地方显示它?

我尝试了对齐和安排,但它们都不起作用。我更喜欢在DropdownMenu 任何地方显示标签,但我找不到办法。

桌面撰写

fun main() = Window {
    var helloText by remember { mutableStateOf("") }

    Column(
        modifier = Modifier.fillMaxWidth(),
        horizontalAlignment = Alignment.CenterHorizontally,
        verticalArrangement = Arrangement.Center
    ) {
        Item("Darian", "Russ") {
            helloText = it
        }
        Item("Maynerd", "Andre") {
            helloText = it
        }
        Item("Sandra", "Victoria") {
            helloText = it
        }
        Spacer(modifier = Modifier.height(2.dp))
        Text(text = helloText)
    }
}

@Composable
fun Item(text: String, text2: String, onMenuTab: (String) -> Unit) {
    var expanded by remember { mutableStateOf(false) }
    Column(
        modifier = Modifier.fillMaxWidth(),
        horizontalAlignment = Alignment.CenterHorizontally,
        verticalArrangement = Arrangement.Center
    ) {
        val modifier = Modifier.clickable {
            expanded = true
        }
        DropdownMenu(
            expanded = expanded,
            onDismissRequest = {
                expanded = false
            }
        ) {
            DropdownMenuItem(onClick = {
                onMenuTab("hello $text $text2")
                expanded = false
            }, modifier = Modifier.align(Alignment.CenterHorizontally)) {
                Text("Hello")
            }
            DropdownMenuItem(onClick = { /* Handle settings! */ }) {
                Text("Settings")
            }
            Divider()
            DropdownMenuItem(onClick = { /* Handle send feedback! */ }) {
                Text("Send Feedback")
            }
        }
        Text(text = text, modifier = modifier)
        Text(text = text2, modifier = modifier)
        Divider(modifier = Modifier.height(2.dp))
        Spacer(modifier = Modifier.height(2.dp))
    }
}
4

0 回答 0