Intereting Posts

Почему WebView намного быстрее, чем TextView

У меня есть активность, которая должна отображать текстовый файл. Текстовый файл – 165 КБ. Первоначально, после того, как я прочитал в текстовом файле, я бы сделал что-то вроде этого,

textView.setText(fileText); 

Но это заняло более 10 секунд на моем Nexus 4, и я подтвердил, что это произошло из-за вызова setText() и не чтения файла. Затем, после небольшого поиска, у меня возникла идея поместить его в webview, используя WebView.loadData() . Это занимает меньше секунды.

Мне любопытно, почему WebView способен загружать текст намного быстрее, чем TextView. Кто-нибудь знает?

Из того, что я помню;

WebView будет отображать только текст, который он должен отображать в любой момент времени. Это означает, что при первой загрузке загружается только 20-30 строк текста. Если вы вызываете textView.setText(fileText); Он заставляет Android отображать весь текст, даже если он не отображается. Если вы пытаетесь добавить много текста в TextView, вы должны использовать textView.append(fileLine); В цикле, который должен загружаться довольно быстро.