compose_version = '1.0.0-beta02'。
我可以通过 FocusRequester 设置焦点状态 TextField,但 Button 不能。
val requester1 = FocusRequester()
TextField(value = text1,
{ newValue ->
text1 = newValue
},
modifier = Modifier
.focusable(true)
.focusRequester(requester1)
.background(focusedColor1)
.onFocusChanged {
focusedColor1 = if (it.isFocused) {
text1 = "TextField1 focused"
Color.Red
} else {
text1 = "TextField1 unfocused"
Color.Green
}
}
)
Run Code Online (Sandbox Code Playgroud)
将调用 TextField 的“onFocusChanged”方法。
val requester3 = FocusRequester()
Button(
onClick = {
requester3.requestFocus()
},
modifier = Modifier
.focusModifier()
.focusable(true)
.focusRequester(requester3)
.onFocusEvent {
Toast
.makeText(
context,
"Button onFocusEvent it.isFocused:${it.isFocused}. ${it.name}", …Run Code Online (Sandbox Code Playgroud) android android-tv android-jetpack-compose android-compose-button android-jetpack-compose-tv