当前标签 / 自定义 / 总共1篇

Android中自定义键盘和输入法

前言

关于自定义键盘搜索了一下,网上基本上是通过android.inputmethodservice.Keyboard实现的,但是打开Google文档却发现在Android Q中这个类将被废弃。

This class is deprecated because this is just a convenient UI widget class that application developers can re-implement on top of existing public APIs. If you have already depended on this class, consider copying the implementation from AOSP into your project or re-implementing a similar widget by yourselves.

通过Keyboard实现自定义是很容易的,只需要自定义键盘xml即可:

<Keyboard
        android:keyWidth="%10p"
        android:keyHeight="50px"
        android:horizontalGap="2px"
        android:verticalGap="2px" >
    <Row android:keyWidth="32px" >
        <Key android:keyLabel="A" />
        ...
    </Row>
    ...
</Keyboard>

这种自定义键盘的方式存在着很多缺点(更准确的说应该是很多不足):

  1. 在Android Pad上面的支持有问题。
  2. 不能够实现动态更改键盘顺序和位置,或者动态控制和隐藏部分键。

阅读更多