android - 如何在 Android 软键盘键上绘制两行文本?

标签 android android-softkeyboard

有什么方法可以在没有图像的情况下在 Android SoftKeyboard 上绘制两行文本?我的意思是类似的东西

Caps
Lock

在一个键上。

最佳答案

你试过KeyboardView的onDraw()方法了吗?在那里,您可以在键上绘制替代字符。我在自己的代码中使用过这样的东西:

    @Override
    public void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        Paint paint = new Paint();
        paint.setTextAlign(Paint.Align.LEFT);
        paint.setTextSize(23);
        List<Key> keys = getKeyboard().getKeys();
        for(Key key: keys) {
            String upperLetter = bindingsMap.get(key.label.toString());
            canvas.drawText(upperLetter, key.x + (key.width/2)+14, key.y + 21, paint);                      
        }
    }

关于android - 如何在 Android 软键盘键上绘制两行文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8591593/

相关文章:

Android/AOSP Android.mk 构建和支持-v4 AAR 等

java - 创建新 Activity 错误: RED SQUIGGLYS EVERYWHERE

如果类型为文本,带有 Enterkeyhint 的 HTML 移动网络输入不会关注下一个输入

android - 键盘隐藏输入(位置:fixed; bottom:0;) with phonegap on android

android - 键盘出现后 View 未调整大小

android - 内容观察者如何处理已删除的文件?

android - 如何找到程序的总指令数?

java - Android (Java) 将 JSONArray 转换为 JSONObject

android - 显示和隐藏软键盘不起作用

android - 在 Android 的 Fragment 中,布局未 float 在键盘上方