EditText сжимает длинный текст, а затем делает вид редактируемым при нажатии / прикосновении - PullRequest
0 голосов
/ 06 мая 2018

У меня есть EditText, который мне нужно увеличить, чтобы убедиться, что первые символы видны, если текст слишком длинный. Но при событии щелчка / касания оно должно быть редактируемым, а курсор должен находиться в конце строки.

После поиска в интернете кажется, что android:ellipsize="end" не совместим с редактируемым режимом EditText. Действительно, если я установлю edittext.setKeyListener(null) ellipsize работает, но тогда представление не редактируется, и я не могу установить для него onClickListener.

Если я использую setFocusable(false) вместо отключения KeyListener, я не получаю эффект многоточия.

Мой текущий код:

    v.setSelection(0);
    v.setFocusable(false);
    //v.setKeyListener(null);
    v.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            v.setFocusable(true);
            v.setFocusableInTouchMode(true);
            v.setEnabled(true);
            v.setSelection(v.getText().length());
        }
    });

XML:

android:lines="1"
android:scrollHorizontally="true"
android:ellipsize="end"
android:singleLine="true"

1 Ответ

0 голосов
/ 06 мая 2018

Можете ли вы поработать с другими видами? Например, show TextView для ellipsize и onclick из TextView show EditText instead of TextView и сохранение позиции курсора до конца EditText

...