在软键盘上将下一个按钮更改为完成按钮不起作用

时间:2015-11-19 22:47:04

标签: android

当用户单击操作栏中的图标时,将打开AlertDialog以保存数据。 要输入文件名,将出现一个软键盘。在这个键盘中,我想用DONE更改ENTER按钮。我申请了“.setImeOptions(EditorInfo.IME_ACTION_DONE);”但它不起作用。这是我的AlertDialog代码:

public void openSaveBox(){

    final AlertDialog ad = new AlertDialog.Builder(this).create();
    ad.setTitle("OCRA score bewaren");
    ad.setMessage("Geef een bestandsnaam in:");
    final EditText input = new EditText(this);        
    ad.setView(input);

    ad.setButton2("OK", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
            String file = input.getText().toString();
            bewaren(file);
            ad.dismiss();
        }
    });
    ad.setButton("Annuleren", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
            ad.dismiss();
        }
    });

    ad.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
    input.setImeOptions(EditorInfo.IME_ACTION_DONE);

    ad.show();
}

我做错了什么?

1 个答案:

答案 0 :(得分:2)

InputType之前设置编辑文本输入的ImeOptions,即

  input.setInputType(EditorInfo.TYPE_CLASS_TEXT);
  input.setImeOptions(EditorInfo.IME_ACTION_DONE);