Все. Сейчас я работаю над App, которое запускает диалог (содержащий EditText) на любой буквенно-цифровой клавише, нажатой с клавиатуры. Теперь я хочу, чтобы любой тип пользователя появлялся в окне EditText, который работает правильно, единственная проблема, которая у меня есть, я хочу, чтобы ключ char был нажат, чтобы открыть диалог в EditText Box. Мне не хватает 1-го символа, который явно прав. Но я получаю этот символ как строку отдельно. Теперь захотелось подключить (показать) эту клавишу char, чтобы ввести EditText от пользователя в качестве 1-й буквы. Я попробовал это,
{
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) всегда действует как последняя буква. Я хочу показать слово или любой пользовательский ввод, начиная с 1-го ключа. Спасибо.
Найденное решение, Просто переместив позицию текстового курсора. С помощью search_d_text.setSelection(s1.length()); т.е. к следующей позиции.