我正在使用软键盘。
现在,当按下任何键时,我正在处理键弹出。为此,我补充说 在xml文件中,如
<Key android:codes="119" android:keyLabel="w" android:popupKeyboard="@xml/popupview"
android:popupCharacters="w"/>
popupview.xml
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@drawable/previewbackground"
android:textColor="@android:color/white"
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="32sp" />
previewbackground.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="1dp" android:color="#bbFFFFFF" />
<solid android:color="#FF000000"/>
</shape>
所以在我的应用程序中添加上面的配置后,弹出看起来 如下所示,
我们可以看到弹出窗口显示。但问题是,
1)只有当我长按键时弹出才会显示。单击时必须显示。
2)弹出窗口显示取消按钮。
3)弹出不会自动消失,我必须按取消(交叉)按钮,手动关闭弹出窗口。
主要默认键弹出如下图所示,
弹出窗口显示成功,但我需要在弹出窗口中进行一些自定义 但我无法找到任何帮助来自定义弹出窗口。
这就是为什么我尝试使用这种配置。但问题是它不是 按预期运作良好。
答案 0 :(得分:1)
您是在谈论包含其他字符的弹出窗口还是关键预览(弹出窗口显示按下的按键的放大版本)?
android:popupKeyboard和android:popupCharacters用于其他字符,例如
<Key android:codes="119" android:keyLabel="w" android:popupKeyboard="@xml/popupview"
android:popupCharacters="2\@"/>
这将允许您长按“&#39; w&#39;用于访问数字2和@字符等字符的键。反斜杠用于转义特殊字符。
键预览由键盘视图类中的setPreviewEnabled(boolean previewEnabled)设置。它可以是真的也可以是假的,但我不知道你是否可以自定义它。在androidIME源https://github.com/android/platform_frameworks_base/blob/master/core/java/android/inputmethodservice/KeyboardView.java
中查看答案 1 :(得分:0)
您需要设置密钥图标,即如下所示可绘制
http://localhost/test/remote.php?file=http://kooleedback.com/about.php
如果你需要选择长按弹出,将xml popup_view布局更改为TextView to keyBoard
popupview.xml
<Key
android:codes="51"
android:keyLabel="3"
android:keyIcon="@drawable/happy_icon"/>