Я отключил программную клавиатуру в своем приложении, потому что у меня есть собственная пользовательская клавиатура. Но проблема в том, что когда я нажимал на тексты редактирования, чтобы вводить данные через свою пользовательскую клавиатуру, эти тексты редактирования вообще не выделялись. Даже курсор не виден внутри этого соответствующего щелкнутого текста редактирования. Почему всегда возникают побочные эффекты при отключении программной клавиатуры? Я попробовал все предложения, которые есть в исходниках, включая stackoverflow, но ничего не получилось. Могу ли я получить идеальное решение, чтобы выделить текст редактирования при нажатии?
Есть ли способ выделить мой текст редактирования?
Ответы (2)
вам нужно вызвать textView.requestFocus()
при нажатии таким образом, чтобы ваш editText
мог быть выделен
не забудьте также добавить в свой XML-файл этот атрибут android:focusableInTouchMode="true"
к вашему EditText
person
Tomer Mor
schedule
03.09.2012
Спасибо за ваш ответ. Но и это не сработало. Я создал тексты редактирования динамически, поэтому, когда я добавил setFocusableInTouchMode(true), появляется экранная клавиатура. И когда я добавил requestFocus, тоже ничего не изменилось.
- person Kanth; 04.09.2012
Я не знаю, почему возникают эти побочные эффекты, но в этом сообщении есть обходной путь, как отключить клавиатуру и сохранить курсор. Это сработало для меня, за исключением того, что мне также нужно было запросить фокус, так что это:
//disable keypad
et.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
int inType = et.getInputType(); // backup the input type
et.setInputType(InputType.TYPE_NULL); // disable soft input
et.onTouchEvent(event); // call native handler
et.setInputType(inType); // restore input type
et.requestFocus(); // request focus
return true; // consume touch even
}
});
person
Georg
schedule
03.09.2012
Спасибо за ваше время. Но и в моем случае это не сработало. На самом деле есть много вопросов, на которые нет ответа, или ответы на некоторые вопросы расплывчаты, например, программная клавиатура, отсутствующий файл R.java и т. д.,
- person Kanth; 04.09.2012
Что не получилось? Клавиатура появилась или курсор не появился?
- person Georg; 04.09.2012