В моем приложении есть EditText, который должен принимать входные данные только от кнопок, которые я поместил на экран.
Чтобы избежать появления программной клавиатуры, я настроил класс EditText следующим образом:
public class CustomEditText extends EditText {
public CustomEditText(Context context) {
super(context);
}
public CustomEditText(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
// Disables Keyboard;
public boolean onCheckIsTextEditor() {
return false;
}
}
Это успешно останавливает появление клавиатуры, однако в ICS этот подход также останавливает появление курсора.
setCursorVisible(true)
не имеет никакого эффекта.
Я пробовал альтернативные способы скрытия программной клавиатуры, такие как android:editable="false"
и .setKeyListener(null);
, но ни одно из этих решений никогда не работало в моих тестах. Клавиатура всегда появляется.
Итак, есть ли способ вернуть курсор в ICS, сохранив переопределение onCheckIsTextEditor, как есть?