为备用键创建自定义弹出键盘

cha*_*ura 5 android android-softkeyboard gboard

我正在尝试为android中的替代键创建自定义弹出键盘.通过使用默认键盘,我只能为pop键盘提供自定义布局.

我也需要自定义行为(就像Gboard中的一样)例如,

(1)当长按按钮时,默认情况下应突出显示特定的按键

(2)可以通过移动手指来突出显示和选择按键(长按键并同时移动手指)

这些是我引用的链接:

构建自定义Android键盘

创建每个键具有多个/备用字符的SoftKeyboard

如何禁用SoftKeyboard键预览窗口?

这是Gboard中的弹出键盘 在此输入图像描述

任何建议/帮助将不胜感激.

谢谢.

PRA*_*WAJ -2

    <?xml version="1.0" encoding="utf-8"?>\n\n\n    <Keyboard xmlns:android="http://schemas.android.com/apk/res/android"\n        android:keyWidth="10%p"\n        android:horizontalGap="0px"\n        android:verticalGap="0px"\n        android:keyHeight="@dimen/key_height">\n        <Row android:keyHeight="2px"></Row>\n        <Row>\n            <Key\n                android:codes="49"\n                android:keyEdgeFlags="left"\n                android:keyLabel="1" />\n            <Key\n                android:codes="50"\n                android:keyLabel="2" />\n            <Key\n                android:codes="51"\n                android:keyLabel="3" />\n            <Key\n                android:codes="52"\n                android:keyLabel="4" />\n            <Key\n                android:codes="53"\n                android:keyLabel="5" />\n            <Key\n                android:codes="54"\n                android:keyLabel="6" />\n            <Key\n                android:codes="55"\n                android:keyLabel="7" />\n            <Key\n                android:codes="56"\n                android:keyLabel="8" />\n            <Key\n                android:codes="57"\n                android:keyLabel="9" />\n            <Key\n                android:codes="48"\n                android:keyEdgeFlags="right"\n                android:keyLabel="0" />\n        </Row>\n\n        <Row>\n            <Key\n                android:codes="113"\n                android:keyEdgeFlags="left"\n                android:keyLabel="q" />\n            <Key\n                android:codes="119"\n                android:keyLabel="w" />\n\n            <Key\n                android:codes="101"\n                android:keyLabel="e" />\n            <Key\n                android:codes="114"\n                android:keyLabel="r" />\n            <Key\n                android:codes="116"\n                android:keyLabel="t" />\n            <Key\n                android:codes="121"\n                android:keyLabel="y" />\n            <Key\n                android:codes="117"\n                android:keyLabel="u" />\n            <Key\n                android:codes="105"\n                android:keyLabel="i" />\n\n            <Key\n                android:codes="111"\n                android:keyLabel="o" />\n            <Key\n                android:codes="112"\n                android:keyEdgeFlags="right"\n                android:keyLabel="p" />\n        </Row>\n\n\n        <Row>\n\n            <Key\n                android:codes="97" android:keyLabel="a" android:horizontalGap="5%p"\n                android:keyEdgeFlags="left" android:popupKeyboard="@xml/keyboard_popup_template"\n                android:popupCharacters="\xc3\xa1\xc4\x83\xc3\xa4"/>\n            <Key\n                android:codes="115"\n                android:keyLabel="s" />\n            <Key\n                android:codes="100"\n                android:keyLabel="d" />\n            <Key\n                android:codes="102"\n                android:keyLabel="f" />\n            <Key\n                android:codes="103"\n                android:keyLabel="g" />\n            <Key\n                android:codes="104"\n                android:keyLabel="h" />\n            <Key\n                android:codes="106"\n                android:keyLabel="j" />\n            <Key\n                android:codes="107"\n                android:keyLabel="k" />\n            <Key\n                android:codes="108"\n                android:keyEdgeFlags="right"\n                android:keyLabel="l" />\n\n\n        </Row>\n\n        <Row>\n            <Key\n                android:codes="-1" android:keyIcon="@drawable/narrow2"\n                android:keyWidth="15%p" android:isModifier="true"\n                android:isSticky="true" android:keyEdgeFlags="left" />\n            <Key\n                android:codes="122"\n                android:keyLabel="z"\n                android:keyWidth="15%p" />\n            <Key\n                android:codes="120"\n                android:keyLabel="x"\n                android:keyWidth="15%p" />\n            <Key\n                android:codes="99"\n                android:keyLabel="c"\n                android:keyWidth="15%p" />\n            <Key\n                android:codes="118"\n                android:keyLabel="v"\n                android:keyWidth="15%p" />\n            <Key\n                android:codes="98"\n                android:keyLabel="b"\n                android:keyWidth="15%p" />\n            <Key\n                android:codes="110"\n                android:keyLabel="n"\n                android:keyWidth="15%p" />\n            <Key\n                android:codes="109"\n                android:keyLabel="m"\n                android:keyWidth="15%p" />\n            <Key\n                android:codes="-5"\n                android:isRepeatable="true"\n                android:keyEdgeFlags="right"\n                android:keyIcon="@drawable/sym_keyboard_delete"\n                android:keyWidth="20%p" />\n        </Row>\n\n        <Row\n            android:rowEdgeFlags="bottom"\n            android:verticalGap="5px">\n\n            <Key\n                android:codes="-2"\n                android:keyEdgeFlags="left"\n                android:keyLabel="123"\n                android:keyWidth="15%p" />\n            <Key\n                android:codes="64"\n                android:keyLabel="\\@"\n                android:keyWidth="10%p" />\n\n            <Key\n                android:codes="-101"\n                android:keyIcon="@drawable/sym_keyboard_language_switch"\n                android:keyWidth="10%p" />\n            <Key\n                android:codes="32"\n                android:isRepeatable="true"\n                android:keyLabel="SPACE"\n                android:keyWidth="30%p" />\n\n            <Key\n                android:codes="46"\n                android:keyLabel="."\n                android:keyWidth="10%p" />\n            <Key\n                android:codes="44"\n                android:keyLabel=","\n                android:keyWidth="10%p"\n                android:popupCharacters=".,?!#@"\n                android:popupKeyboard="@xml/keyboard_popup_template" />\n            <Key\n                android:codes="-4"\n                android:keyEdgeFlags="right"\n                android:keyLabel="DONE"\n                android:keyWidth="20%p" />\n        </Row>\n\n        <Row android:keyHeight="2px"></Row>\n\n    </Keyboard>\n\nPlease try it.\n
Run Code Online (Sandbox Code Playgroud)\n