在android中应用KeyboardView 我试图制作一个定制的键盘布局,它有3个键,一个空间,3个中间的键,一个空间和一个键。通过加号显示,键盘上的一行应如下所示:
+++=+++=+ 其中,加号是键,=表示空格。我的xml代码是:在android中应用KeyboardView 我试图制作一个定制的键盘布局,它有3个键,一个空间,3个中间的键,一个空间和一个键。通过加号显示,键盘上的一行应如下所示:,android,android-layout,android-softkeyboard,android-keypad,custom-keyboard,Android,Android Layout,Android Softkeyboard,Android Keypad,Custom Keyboard,+++=+++=+ 其中,加号是键,=表示空格。我的xml代码是: <?xml version="1.0" encoding="utf-8"?> <Keyboard xmlns:android="http://schemas.android.com/apk/res/android" android:keyWidth="12.50%p" android:keyHeight="8.9%p"> <Row> <Key android:codes="1
<?xml version="1.0" encoding="utf-8"?>
<Keyboard xmlns:android="http://schemas.android.com/apk/res/android"
android:keyWidth="12.50%p"
android:keyHeight="8.9%p">
<Row>
<Key android:codes="1" android:keyLabel="sin" android:isRepeatable="true" android:keyEdgeFlags="left" />
<Key android:codes="2" android:keyLabel="cos" android:isRepeatable="true" />
<Key android:codes="3" android:keyLabel="tan" android:isRepeatable="true"
android:horizontalGap="6.25%p" />
<Key android:codes="-1" android:keyLabel="DRAW" android:isRepeatable="true" android:keyWidth="25%p" />
<Key android:codes="22" android:keyLabel="x\u207F" android:isRepeatable="true"
android:horizontalGap="6.25%p" />
<Key android:codes="-2" android:keyIcon="@drawable/delete_symbol" android:isRepeatable="true" android:keyEdgeFlags="right"/>
</Row>
<Row>
<Key android:codes="4" android:keyLabel="asin" android:isRepeatable="true" android:keyEdgeFlags="left" />
<Key android:codes="5" android:keyLabel="acos" android:isRepeatable="true" />
<Key android:codes="6" android:keyLabel="atan" android:isRepeatable="true"
android:horizontalGap="6.25%p" />
<Key android:codes="36" android:keyLabel="sinh" android:isRepeatable="true" />
<Key android:codes="37" android:keyLabel="cosh" android:isRepeatable="true" />
<Key android:codes="38" android:keyLabel="tanh" android:isRepeatable="true"
android:horizontalGap="6.25%p" />
<Key android:codes="21" android:keyLabel="\u00F7" android:isRepeatable="true" android:keyEdgeFlags="right" />
</Row>
<Row>
<Key android:codes="42" android:keyLabel="asinh" android:isRepeatable="true" android:keyEdgeFlags="left" />
<Key android:codes="43" android:keyLabel="acosh" android:isRepeatable="true" />
<Key android:codes="44" android:keyLabel="atanh" android:isRepeatable="true"
android:horizontalGap="6.25%p" />
<Key android:codes="33" android:keyLabel="7" android:isRepeatable="true" />
<Key android:codes="34" android:keyLabel="8" android:isRepeatable="true" />
<Key android:codes="35" android:keyLabel="9" android:isRepeatable="true"
android:horizontalGap="6.25%p"/>
<Key android:codes="20" android:keyLabel="\u00D7" android:isRepeatable="true" android:keyEdgeFlags="right" />
</Row>
<Row>
<Key android:codes="10" android:keyLabel="\u221a" android:keyEdgeFlags="left" android:isRepeatable="true" />
<Key android:codes="11" android:keyLabel="e^(" android:isRepeatable="true" />
<Key android:codes="12" android:keyLabel="ln(" android:isRepeatable="true"
android:horizontalGap="6.25%p" />
<Key android:codes="30" android:keyLabel="4" android:isRepeatable="true" />
<Key android:codes="31" android:keyLabel="5" android:isRepeatable="true" />
<Key android:codes="32" android:keyLabel="6" android:isRepeatable="true"
android:horizontalGap="6.25%p" />
<Key android:codes="19" android:keyLabel="\u2212" android:isRepeatable="true" android:keyEdgeFlags="right" />
</Row>
<Row>
<Key android:codes="40" android:keyLabel="log" android:isRepeatable="true" android:keyEdgeFlags="left" />
<Key android:codes="41" android:keyLabel="abs" android:isRepeatable="true" />
<Key android:codes="13" android:keyIcon="@drawable/italic_x" android:isRepeatable="true"
android:horizontalGap="6.25%p"/>
<Key android:codes="27" android:keyLabel="1" android:isRepeatable="true" />
<Key android:codes="28" android:keyLabel="2" android:isRepeatable="true" />
<Key android:codes="29" android:keyLabel="3" android:isRepeatable="true"
android:horizontalGap="6.25%p"/>
<Key android:codes="18" android:keyLabel="+" android:isRepeatable="true" android:keyEdgeFlags="right" />
</Row>
<Row>
<Key android:codes="-3" android:keyIcon="@drawable/keyboard_done" android:isRepeatable="true" android:keyWidth="25%p" android:keyEdgeFlags="left" />
<Key android:codes="19" android:keyLabel="(-)" android:isRepeatable="true"
android:horizontalGap="6.25%p" />
<Key android:codes="16" android:keyLabel="(" android:isRepeatable="true" />
<Key android:codes="26" android:keyLabel="0" android:isRepeatable="true" />
<Key android:codes="17" android:keyLabel=")" android:isRepeatable="true"
android:horizontalGap="6.25%p" />
<Key android:codes="23" android:keyLabel="." android:isRepeatable="true" android:keyEdgeFlags="right" />
</Row>
有人能帮忙吗?是的,这是安卓系统的一个缺陷,但幸运的是有一个解决办法 解决方案是在需要空白的关键帧之间添加一个水平间距>0且宽度=0的空关键帧。此空键将是唯一具有水平间隙的键;所有其他键不应具有此属性 以下是我自己的三个可见关键点示例,它们之间有空格:
<Row>
<Key android:codes="1" android:keyLabel="First key" android:keyEdgeFlags="left" />
<Key android:codes="-999" android:keyLabel="" android:keyWidth="0%p" android:horizontalGap="2.0%p" />
<Key android:codes="2" android:keyLabel="Second key" />
<Key android:codes="-999" android:keyLabel="" android:keyWidth="0%p" android:horizontalGap="2.0%p" />
<Key android:codes="3" android:keyLabel="Third key" android:keyEdgeFlags="right"/>
</Row>
<Row>
<Key android:codes="1" android:keyLabel="First key" android:keyEdgeFlags="left" />
<Key android:codes="-999" android:keyLabel="" android:keyWidth="0%p" android:horizontalGap="2.0%p" />
<Key android:codes="2" android:keyLabel="Second key" />
<Key android:codes="-999" android:keyLabel="" android:keyWidth="0%p" android:horizontalGap="2.0%p" />
<Key android:codes="3" android:keyLabel="Third key" android:keyEdgeFlags="right"/>
</Row>