Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
S@SH@
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 50
1

Событие после изменения текста в TextView

29.05.2016, 22:18. Просмотров 936. Ответов 6
Метки нет (Все метки)

Подскажите пожалуйста, какое событие срабатывает после того как изменился текст в TextView, чтобы туда повесить действие. Цель такая, текст в TextView грузится из БД, затем проверяется сколько он занимает в TextView строк и если больше определенного количества, то размер шрифта уменьшается. Если сразу после setText проверяю количество строк, то получаю 0.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2016, 22:18
Ответы с готовыми решениями:

Ошибка изменения TextView
Из первого активити мы передаем значение.. intent = new...

Как отследить изменения значения TextView
Здравствуйте, С помощью jsoup через Асинк парсится значения в textView и через...

TextView выравнивание текста
В текст в TextView по умолчанию идет выравнивание текста по левому краю. Как...

Выделение текста в TextView
При выделении текста в TextView android:textIsSelectable="true" на моем...

TextView авторазмер текста
android studio Textview имеет размеры 100% на 50%, заполняя половину экрана....

6
korshun84
86 / 86 / 22
Регистрация: 08.07.2014
Сообщений: 531
30.05.2016, 07:19 2
Цитата Сообщение от S@SH@ Посмотреть сообщение
Подскажите пожалуйста, какое событие срабатывает после того как изменился текст в TextView
Первая ссылка в гугле
http://stackoverflow.com/questions/2...hange-listener
0
S@SH@
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 50
30.05.2016, 09:11  [ТС] 3
korshun84, пробовал уже, не получилось. Тоже ноль выдает.
0
Pablito
2759 / 2191 / 741
Регистрация: 12.05.2014
Сообщений: 7,688
Завершенные тесты: 1
30.05.2016, 10:00 4
Лучший ответ Сообщение было отмечено S@SH@ как решение

Решение

setText и слушатель TextWatcher отрабатывают очень быстро, по сути текст еще не успевают отрисоваться, а слушатель уже вызвали
проще всего в слушателе делать getLineCount через очередь событий UI потока
Java
1
2
3
4
5
6
7
8
            public void afterTextChanged(Editable s) {
                textView.post(new Runnable() {
                    @Override
                    public void run() {
                        int count = textView.getLineCount());
                    }
                });
            }
1
Valakin
433 / 99 / 15
Регистрация: 21.02.2015
Сообщений: 771
30.05.2016, 10:01 5
...
0
Vladimir93
64 / 65 / 11
Регистрация: 28.06.2015
Сообщений: 265
31.05.2016, 09:15 6
Цитата Сообщение от S@SH@ Посмотреть сообщение
korshun84, пробовал уже, не получилось. Тоже ноль выдает.
Так и правильно выдает, то событие для EditText. А у вас TextView.
Что кстати мешает отображать ваш текст в EditText? Запрещаем редактировать и все - отображалка готова.
0
Pablito
2759 / 2191 / 741
Регистрация: 12.05.2014
Сообщений: 7,688
Завершенные тесты: 1
31.05.2016, 09:37 7
это событие спокойно отрабатывает и на TextEdit
я уже дал ответ почему у него количество строк равно нулю
0
31.05.2016, 09:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2016, 09:37

Обновление текста в TextView
Подскажите как лучше сделать. У меня постоянно изменяется значение переменной...

Выравнивание текста в TextView по ширине
Доброго времени суток! Подскажите пожалуйста, как можно выровнять текст по...

Вставка текста из файла в TextView
Доброй ночи. Вопрос возможно банален, но сейчас 2 ночи,а ответ так и не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru