Avatar ·

如何在 Jetpack Compose 中以编程方式将焦点设置到 TextField?

大家好!我刚开始学习 Jetpack Compose,遇到了一个问题,在经典的 Android View 中只需调用 `requestFocus()` 即可解决。 我需要的是,在打开屏幕或点击按钮时,焦点自动跳转到特定的输入字段(TextField)。例如,有一个搜索屏幕,用户应该立即开始输入文本,而无需点击输入字段。 以下是我当前的代码: ```kotlin @Composable fun SearchScreen() { var query by remember { mutableStateOf("") } TextField( value = query, onValueChange = { query = it }, label = { Text("搜索") } ) Button(onClick = { /* 需要将焦点设置回 TextField */ }) { Text("重置并聚焦") } } ``` 我尝试过使用 `Modifier.focusRequester()` 和 `FocusRequester`,但没有任何效果——焦点没有设置。文档中提到了一些关于 `focusable()` 的内容,但我不明白如何使用。