在android的edittext中,将文本(或字符)与用户输入相结合
对所有人。 现在我正在开发一个应用程序,它可以在键盘上按下的任何字母数字键上启动一个对话框(包含编辑文本)。现在,我想让EditText框中出现的用户类型正常工作,唯一的问题是,我想让第一次按下的char键在EditText框中打开对话框。我丢失了第一个字符键,这显然是正确的。但我分别以字符串的形式检索该字符。 现在,我们想将该字符键作为第一个字母附加(显示)到用户输入的EditText中。 我试过这个在android的edittext中,将文本(或字符)与用户输入相结合,android,android-edittext,Android,Android Edittext,对所有人。 现在我正在开发一个应用程序,它可以在键盘上按下的任何字母数字键上启动一个对话框(包含编辑文本)。现在,我想让EditText框中出现的用户类型正常工作,唯一的问题是,我想让第一次按下的char键在EditText框中打开对话框。我丢失了第一个字符键,这显然是正确的。但我分别以字符串的形式检索该字符。 现在,我们想将该字符键作为第一个字母附加(显示)到用户输入的EditText中。 我试过这个 { final EditText search_d_text = (EditText
{
final EditText search_d_text = (EditText) dialog
.findViewById(R.id.search_text1);
search_d_text.setText(s1);// si is the 1st char key launch dialog(containing edittext).
search_d_text.setInputType(InputType.TYPE_NULL);
search_d_text
.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId,
KeyEvent event) {
if (event != null
&& event.getAction() == KeyEvent.ACTION_DOWN) {
// Handle enter key
return true;
}
if (actionId == EditorInfo.IME_ACTION_NEXT) {
// Handle IME NEXT key
return true;
}
if (actionId == EditorInfo.IME_ACTION_DONE) {
// Handle IME DONE key
return true;
}
return false;
}
});
search_string = search_d_text.getText().toString();
enterd_text = search_d_text.getText();
// collecting input text.
}
我得到的是,当我键入MASK时,它显示ASKM
setText(s1)始终作为最后一个字母。
我想显示从第一个键开始的单词或任何用户输入。
谢谢。找到了解决方案,
刚刚移动了编辑文本光标的位置。通过
search_d_text.setSelection(s1.length());i、 e到下一个位置。找到解决方案,
刚刚移动了编辑文本光标的位置。通过
search_d_text.setSelection(s1.length());i、 e转到下一个位置。打开对话框的代码?感谢您的回复,在相同的活动中,只是一个弹出窗口。我实现了一个dispatchKeyEvent(KeyEvent事件)来检测键,如果它是字母数字键,则显示对话框。因此,我希望代码查看您是否将字符传递给对话框?@Dhereshsingh上述代码来自自定义对话框本身。search_d_text.setText(s1);代码在哪里打开对话框?感谢回复,在相同的活动中,只是一个弹出窗口。我实现了一个dispatchKeyEvent(KeyEvent事件)来检测键,如果它是字母数字键,则显示对话框。因此,我希望代码查看您是否将字符传递给对话框?@Dhereshsingh上述代码来自自定义对话框本身。search_d_text.setText(s1);