为什么WebView比TextView快得多

时间:2013-11-26 22:18:25

标签: android performance webview textview

我有一个应该显示文本文件的活动。文本文件是165 kB。最初,在我阅读文本文件后,我会做这样的事情,

textView.setText(fileText);

但是我的Nexus 4上花了10秒钟,我确认这是因为调用setText()而没有读取文件。然后,在搜索了一下后,我想到了使用WebView.loadData()将它放在webview中。这需要不到一秒钟。

我很好奇为什么WebView能够比TextView更快地加载文本。有谁知道吗?

1 个答案:

答案 0 :(得分:2)

从我记忆中来看;

WebView将仅呈现在任何给定时间显示的文本。这意味着当您第一次加载它时,将只加载20 - 30行文本。而当你致电textView.setText(fileText);时,它会导致Android呈现所有文本,即使它没有显示。如果您尝试向TextView添加大量文本,那么您应该在循环中使用textView.append(fileLine);,这应该加载得更快。