Android: отображение текста в EditText с самого начала - PullRequest
3 голосов
/ 13 августа 2011

У меня есть представление EditText в моем файле XML с определенной шириной. Я установил его на 1 строку, чтобы, если введенный текст был длиннее ширины моего редактируемого текста, текст не переносился с помощью:

android:singleLine="true"

Однако после ввода длинного текста (длиннее ширины редактируемого текста) отображается последняя часть текста. Я хотел бы, чтобы после того, как пользователь закончил вводить текст, текст должен отображаться с самого начала. Например, предположим, что у меня есть текст для редактирования шириной, который принимает только 4 символа. Поэтому, если я ввожу «ABCDEFG» в поле «EditText», я вижу «DEFG», но я хочу видеть «ABCD». Как это можно сделать.

вот мой EditText в XML:

<EditText
    android:id="@+id/fileNameBox"
    android:layout_width = "0dp"
    android:layout_height="40dp"
    android:gravity="left"
    android:ellipsize="start"
    android:singleLine="true"
    android:textSize="14sp" 
    android:layout_weight="0.5" 
    android:layout_marginBottom="1dip"/>

Спасибо за помощь.

TJ

Ответы [ 3 ]

4 голосов
/ 13 августа 2011

Установка слушателя изменения фокуса на EditText должна удовлетворить ваши потребности.

mEdittext.setOnFocusChangeListener(new OnFocusChangeListener() {

@Override
    public void onFocusChange(View v, boolean hasFocus) {
    if (hasFocus == false) {  // lost focus
       mEdittext.setSelection(0,0);
    }
}
});
0 голосов
/ 13 августа 2011

Взгляните на свойство android:ellipsize и установите для него значение "конец".

0 голосов
/ 13 августа 2011

Вы пробовали андроид: многоточие ?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...