问题描述
我在 android 中开发了一个软键盘。 键盘是用 xml 制作的。 它只有一个按键面板,我如何放置一个允许用户从 2 个不同的按键面板切换以拥有更多可分配按键的按键? 就像在每个智能手机键盘中一样,特殊字符键可以用不同的键打开另一个标签页。
这里是我的键盘 xml。
<Keyboard xmlns:android="http://schemas.android.com/apk/res/android"
android:keyWidth="10%p"
android:horizontalGap="0px"
android:verticalGap="0px"
android:keyHeight="43dp"
android:keyPreviewLayout="@null"
>
<Row>
<Key android:codes="49" android:keyLabel="1" android:keyEdgeFlags="left"/>
<Key android:codes="50" android:keyLabel="2"/>
<Key android:codes="52" android:keyLabel="3"/>
<Key android:codes="53" android:keyLabel="4"/>
<Key android:codes="54" android:keyLabel="5"/>
<Key android:codes="55" android:keyLabel="6"/>
<Key android:codes="56" android:keyLabel="7"/>
<Key android:codes="57" android:keyLabel="8"/>
<Key android:codes="58" android:keyLabel="9"/>
<Key android:codes="48" android:keyLabel="0" android:keyEdgeFlags="right"/>
</Row>
<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"/>
<Key android:codes="114" android:keyLabel="r"/>
<Key android:codes="116" android:keyLabel="t"/>
<Key android:codes="121" android:keyLabel="y"/>
<Key android:codes="117" android:keyLabel="u"/>
<Key android:codes="105" android:keyLabel="i"/>
<Key android:codes="111" android:keyLabel="o"/>
<Key android:codes="112" android:keyLabel="p" android:keyEdgeFlags="right"/>
</Row>
<Row>
<Key android:codes="97" android:keyLabel="a" android:horizontalGap="5%" android:keyEdgeFlags="left"/>
<Key android:codes="115" android:keyLabel="s"/>
<Key android:codes="100" android:keyLabel="d"/>
<Key android:codes="102" android:keyLabel="f"/>
<Key android:codes="103" android:keyLabel="g"/>
<Key android:codes="104" android:keyLabel="h"/>
<Key android:codes="106" android:keyLabel="j"/>
<Key android:codes="107" android:keyLabel="k"/>
<Key android:codes="108" android:keyLabel="l" android:keyEdgeFlags="right"/>
</Row>
<Row>
<Key android:codes="-1" android:keyLabel="\u21E7 " android:keyWidth="15%p" android:keyEdgeFlags="left"/> <!--shift key-->
<Key android:codes="122" android:keyLabel="z"/>
<Key android:codes="120" android:keyLabel="x"/>
<Key android:codes="99" android:keyLabel="c"/>
<Key android:codes="118" android:keyLabel="v"/>
<Key android:codes="98" android:keyLabel="b"/>
<Key android:codes="110" android:keyLabel="n"/>
<Key android:codes="109" android:keyLabel="m"/>
<Key android:codes="-5" android:keyLabel="\u232B" android:keyWidth="15%p" android:isRepeatable="true" android:keyEdgeFlags="right"/> <!--Delete key-->
</Row>
<Row android:rowEdgeFlags="bottom">
<Key android:codes="39" android:keyLabel="'" android:keyWidth="10%p" android:keyEdgeFlags="left" />
<Key android:codes="44" android:keyLabel="," android:keyWidth="10%p" />
<Key android:codes="32" android:keyLabel="\u1680" android:keyWidth="45%p" android:isRepeatable="true"/><!--space key-->
<Key android:codes="46" android:keyLabel="." android:keyWidth="10%p"/>
<Key android:codes="63" android:keyWidth="10%p" android:keyLabel="\?" />
<Key android:codes="33" android:keyWidth="10%p" android:keyLabel="\!" />
<Key android:codes="-4" android:keyLabel="\u2713" android:keyWidth="15%p" android:keyEdgeFlags="right" /> <!--Enter key-->
</Row>
</Keyboard>
有没有办法不以编程方式做到这一点?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)