某些第三方键盘在每个键上都有多个字符,例如,Better Keyboard 8在每个键上的字母上方都有数字和标点符号:
可以使用<Key>
标记完成吗?如果是这样,我无法弄清楚如何。如果有人知道如何,我将不胜感激。
提前致谢, 百里
答案 0 :(得分:26)
我想通了,所以我回答了自己的问题。
它不能用XML完成,但可以通过覆盖KeyboardView的onDraw()方法在Java中完成。在父类绘制键之后,这个无意义的示例在每个键的顶部绘制一个小写字母:
public class MyKeyboardView extends KeyboardView {
@Override
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
Paint paint = new Paint();
paint.setTextAlign(Paint.Align.CENTER);
paint.setTextSize(25);
paint.setColor(Color.RED);
List<Key> keys = getKeyboard().getKeys();
for(Key key: keys) {
if(key.label != null)
canvas.drawText(key.label.toString(), key.x + (key.width/2), key.y + 25, paint);
}
}
}