Android DialogFragment中的EditText:如何限制为单行并显示;搜索“;键盘上的图标?
我已准备好回答我的问题: 在Android的文字游戏中,我想为用户提供一种检查游戏词典中是否有文字的可能性——通过显示带有单个Android DialogFragment中的EditText:如何限制为单行并显示;搜索“;键盘上的图标?,android,android-edittext,android-dialogfragment,android-keypad,dialogfragment,Android,Android Edittext,Android Dialogfragment,Android Keypad,Dialogfragment,我已准备好回答我的问题: 在Android的文字游戏中,我想为用户提供一种检查游戏词典中是否有文字的可能性——通过显示带有单个EditText的DialogFragment 以下是从自定义文件中摘录的代码: 不幸的是,有两个问题(在上面的屏幕截图中用红色箭头标记): EditText 键盘上没有显示“搜索”图标 这里有人能帮忙吗?我倾向于发现设置单行线(true)比设置单行线(1)更稳定 对于搜索,请尝试添加editText.setImeOptions(EditorInfo.IME\u ACT
EditText
的DialogFragment
以下是从自定义文件中摘录的代码:
不幸的是,有两个问题(在上面的屏幕截图中用红色箭头标记):
EditText
这里有人能帮忙吗?我倾向于发现
设置单行线(true)
比设置单行线(1)
更稳定
对于搜索,请尝试添加
editText.setImeOptions(EditorInfo.IME\u ACTION\u search)
。您的代码在接收到搜索事件时会处理该事件,但这不会告诉它首先发送该事件。或者,在xml:android:singleLine=“true”中
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final EditText editText = new EditText(getContext());
editText.setMaxLines(1);
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
public boolean onEditorAction(TextView v,
int actionId,
KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
String word = editText.getText().toString();
mListener.findWord(word);
dismiss();
return true;
}
return false;
}
});
return new AlertDialog.Builder(getContext())
.setIcon(R.mipmap.ic_launcher)
.setTitle(R.string.find_word_title)
.setView(editText, 16, 16, 16, 16)
.setPositiveButton(R.string.find_word_ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
String word = editText.getText().toString();
mListener.findWord(word);
}
}
)
.setNegativeButton(R.string.find_word_cancel, null)
.create();
}