我正在开发一个软键盘,做得很好,但是我不知道如何自定义一个长按键的弹出窗口.
我的键盘视图:
我的键盘布局:
键盘弹出XML:
我尝试将keyBackground和背景属性放在任何地方,但不成功.我试图把:
android:popupLayout="@layout/keyboard"
…在keyboardView上得到nullpointer,也许我在该参数中输入了错误的XML?
在我放在这里的键盘弹出式XML中:
android:popupKeyboard="@xml/keyboard_popup"
我可以改变布局的大小,按键大小,键间距等等,但不能改变颜色或背景.
关键预览也做得很好,我把它放在keyboardView上:
android:keyPreviewLayout="@layout/preview"
…它的工作原理我认为弹出窗口应该是一样的,但不是这样.
如何自定义出现长按键的弹出式窗口?
那么这不是我正在寻找的,而是解决了这个问题.
我自己创建了键盘视图,并弹出一个弹出窗口来显示一个键长时间按下.
public class MyKeyboardView extends KeyboardView{
@Override
protected boolean onLongPress(final Key popupKey) {
final View custom = LayoutInflater.from(context)
.inflate(R.layout.popup_layout, new frameLayout(context));
popup = new PopupWindow(context);
popup.setWidth(WindowManager.LayoutParams.WRAP_CONTENT);
popup.setHeight(WindowManager.LayoutParams.WRAP_CONTENT);
popup.showAtLocation(this, Gravity.NO_GRAVITY, popupKey.x, popupKey.y-50);
}
}
这样,您可以在xml中以任何方式自定义弹出窗口.
但是这不是正确的答案,如果你知道一个更好的方法来回答这个问题.
http://stackoverflow.com/questions/34799775/soft-keyboards-popup-layout
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。



