5

TextView 设置文本需要多长时间是否有解决方法?我正在尝试设置一个很长的字符串,因此它最终会阻塞 UI 线程 2-3 秒。由于我无法从不同的线程访问 TextView,我完全被难住了。

编辑:目前,我在 AsyncTask doInBackground() 中构建字符串,并且在 onPostExecute(在 uiThread 上运行)中调用 TextView.setText() TextView 放置在 ScrollView 中

4

2 回答 2

3

即使加载几个屏幕的信息,您也不应该有问题。如果字符串超长,您可以考虑分块延迟加载内容。

于 2013-06-24T17:43:55.280 回答
0

由于我无法从其他线程访问 TextView,

您可以使用不同的Thread,但仍然可以访问您的TextView. 在不知道您的代码的情况下很难给出一个很好的例子,但您可以使用runOnUiThread

或者

你可以使用一个AsyncTask. 这样做,您可以做任何您需要的事情doInBackground()并将文本设置在onPostExecute()

虽然,我不确定你的字符串需要多长时间才能加载。如果您正在做很多工作来将字符串放在一起,那么我建议您使用AsyncTask

于 2013-06-24T17:46:00.707 回答