Android Compose 为特定文本字段模拟键盘

6

我有一个屏幕,其中一些文本字段我想显示一个“虚拟”键盘。这个键盘应该能够有任意数量的按钮,并且可以按照我想要的方式显示。就像下面所示。

我的问题是如何实现这样的功能?

是否有可能以某种方式覆盖键盘接口,以便您可以消耗输入并显示“虚拟”键盘,然后在单击使用正常键盘的任何其他textfield上的返回按钮时删除“虚拟”键盘?

还是我必须创建一个自定义的@ComposableTextView与自定义回调,并手动渲染文本光标?

1个回答

8
你可以实现自己的 TextInputService 或提供 null 来完全禁用默认输入服务:
CompositionLocalProvider(
  LocalTextInputService provides null // or myTextInputService 
) {
    TextField(
        value = text,
        onValueChange = { text = it },
    )
}

myTextInputService 是类似以下内容的服务:

TextInputService(object : PlatformTextInputService {
    //TODO implement methods
}

3
你如何处理自定义键盘的TextField中的光标位置? - Ban Markovic

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接