![](/img/trans.png)
[英]How can I get TextField value from another composable function in Jetpack Compose
[英]How can I get input connection from Jetpack Compose TextField?
我想在焦點更改時捕獲TextField
的InputConnection
,該方法是EditText
中的onCreateInputConnection
。 有沒有這樣的方法? 如何在不使用AndroidView
的情況下實現它?
在這一點上,這幾乎是不可能的。 恐怕您必須包裝編輯文本。 這是因為LocalTextInputService
是staticCompositionLocalOf
並且會導致所有其他可組合重新組合並更改輸入服務。
這將需要您編寫自己的PlatformTextInputService
和TextInputService
類的實現。
然后,您需要將實例提供給LocalTextInputService
組合提供程序,例如:
class MyTextInputService : PlatformTextInputService {
}
class MyInputService : TextInputService(MyTextInputService()) {
}
@Composable
fun CustomInputServiceTextField(...){
val inputService = remember { MyInputService() }
CompositionLocalProvider(LocalTextInputService provides inputService) {
TextField(value = ..., onValueChange = ...)
}
}
這只是一個想法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.