我有一个应该显示文本文件的活动。文本文件是165 kB。最初,在我阅读文本文件后,我会做这样的事情,
textView.setText(fileText);
但是我的Nexus 4上花了10秒钟,我确认这是因为调用setText()
而没有读取文件。然后,在搜索了一下后,我想到了使用WebView.loadData()
将它放在webview中。这需要不到一秒钟。
我很好奇为什么WebView能够比TextView更快地加载文本。有谁知道吗?
答案 0 :(得分:2)
从我记忆中来看;
WebView将仅呈现在任何给定时间显示的文本。这意味着当您第一次加载它时,将只加载20 - 30行文本。而当你致电textView.setText(fileText);
时,它会导致Android呈现所有文本,即使它没有显示。如果您尝试向TextView添加大量文本,那么您应该在循环中使用textView.append(fileLine);
,这应该加载得更快。