Я работаю над приложением для Android, которое сталкивается с проблемами производительности.
Моя цель - получить строки из AsyncTask и отобразить их в TextView. Первоначально TextView пуст, и каждый раз, когда другой процесс отправляет строку, объединяет ее с текущим содержимым текстового представления.
В настоящее время я использую StringBuilder для хранения основной строки, и каждый раз, когда я получаю новую строку, я добавляю ее в StringBuilder и вызываю
myTextView.setText(myStringBuilder.toString())
Проблема в том, что фоновый процесс может отправлять до 100 строк в секунду, а мой метод недостаточно эффективен.
Перерисовка всего TextView каждый раз, очевидно, плохая идея (сложность времени O (N²)), но другого решения я не вижу ...
Вам известна альтернатива TextView, которая могла бы выполнять эти объединения в O (N)?