所以我要制作这个键盘应用程序。
我得到了用户键入的单词,然后他/她键入了某个特定的单词,我想显示一个对话框,提示是/否。
我可以使该应用程序显示Toast,并且可以运行,但是随后我可能没有用户的反馈。
如果我使用此代码:
DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
InputConnection ic = getCurrentInputConnection();
switch (which){
case DialogInterface.BUTTON_POSITIVE:
ic.deleteSurroundingText(palavra.length(), 0);
break;
case DialogInterface.BUTTON_NEGATIVE:
dialog.dismiss();
break;
}
}
};
AlertDialog.Builder builder = new AlertDialog.Builder(this);
我收到一个错误消息,因为我没有在“上下文”中使用的活动。我只有KeyboardView。
我该如何做到这一点?
答案 0 :(得分:0)
假设您的WithEvents
是KeyboardView
的子类,则您应该可以调用View
。例如:
getContext()
答案 1 :(得分:0)
我做到了!
现在这是我的代码(它可以正常工作!):</ p>
AlertDialog alertDialog = new AlertDialog.Builder(this)
.setTitle("Palavra ofensiva")
.setMessage("Deseja mudar a palavra?")
.create();
alertDialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
alertDialog.setButton(AlertDialog.BUTTON_POSITIVE, "Sim", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
InputConnection ic = getCurrentInputConnection();
ic.deleteSurroundingText(palavra.length(), 0);
palavra = "";
}
});
alertDialog.setButton(AlertDialog.BUTTON_NEGATIVE, "Não", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
alertDialog.show();