我正在为 Android 开发一个键盘应用程序。我尝试为普通键和功能键设置不同的背景,但没有用:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Functional keys. -->
<item android:state_single="true" android:state_pressed="true"
android:drawable="@drawable/btn_keyboard_special" />
<item android:state_single="true"
android:drawable="@drawable/btn_keyboard_special" />
<!-- Toggle keys. Use checkable/checked state. -->
<item android:state_checkable="true" android:state_checked="true" android:state_pressed="true"
android:drawable="@drawable/btn_keyboard_key_dark_pressed_on" />
<item android:state_checkable="true" android:state_pressed="true"
android:drawable="@drawable/btn_keyboard_key_dark_pressed_off" />
<item android:state_checkable="true" android:state_checked="true"
android:drawable="@drawable/btn_keyboard_key_dark_normal_on" />
<item android:state_checkable="true"
android:drawable="@drawable/btn_keyboard_key_dark_normal_off" />
<!-- Normal keys -->
<item android:state_pressed="true"
android:drawable="@drawable/glow" />
<item android:drawable="@drawable/btn_keyboard_key_light_normal" />
</selector>
最佳答案
有一个名为 android:keyBackground 的 XML 属性。只需将此属性设置为可绘制对象即可。
将此属性添加到 input.xml 中的 KeyboardView:
<KeyboardView android:keyBackground="@drawable/buttonbgselector" .../>
我假设这就是您用来为所有按键分配背景颜色的方法。
仅针对功能键,创建一个适当的前景可绘制图像以覆盖整个键并将其分配给键盘布局 xml 的 xml 中的 keyIcon
。
为了完美,也使用覆盖相同尺寸的背景图像,以防您不想更改 keyIcon
关于android - 如何在键盘上的xml中为功能键设置不同的背景?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11541993/