如何在Android中使用布局文件创建自定义键盘?

时间:2016-03-10 03:03:06

标签: android android-softkeyboard

我知道如何从xml文件创建键盘,如下所示:

<Row>
<Key          android:codes="113"android:keyLabel="q"android:keyEdgeFlags="left"/>
<Key android:codes="119" android:keyLabel="w"/>
<Key android:codes="101" android:keyLabel="e"/>
......

但我想使用自定义布局,如下所示:

<LinearLayout ......>
<Button android:id="@+id/key_q" .../>
<Button android:id="@+id/key_w" .../>
</LinearLayout>

如何将按钮设为键?

2 个答案:

答案 0 :(得分:2)

在InputMethodService的onCreateInputView中,您可以返回所需的任何视图,它将是键盘的主视图。你并不局限于KeyboardView,事实上没有主键盘实际使用它,它太有限了。膨胀你想要的任何东西并从onCreateInputView返回它。

答案 1 :(得分:0)

您需要创建一个扩展KeyboardView并设置所需布局的类。这样,您就可以像任何其他布局一样以任何方式进行布局。

请参阅此thread以获取一些代码。