有沒有解決TextView設置文本花費多長時間的方法?我正在嘗試設置一個很長的字符串,並因此終止了一個好的2-3秒的UI線程。由於我不能從另一個線程訪問TextView,我完全被困住了。帶有非常長的字符串塊的TextView.setText()UI線程
編輯: 目前,我建立了onPostExecute(這是對uiThread運行)TextView是被放在一個滾動型
內內的AsyncTask doInBackground()裏面的字符串, 只有調用TextView.setText()有沒有解決TextView設置文本花費多長時間的方法?我正在嘗試設置一個很長的字符串,並因此終止了一個好的2-3秒的UI線程。由於我不能從另一個線程訪問TextView,我完全被困住了。帶有非常長的字符串塊的TextView.setText()UI線程
編輯: 目前,我建立了onPostExecute(這是對uiThread運行)TextView是被放在一個滾動型
內內的AsyncTask doInBackground()裏面的字符串, 只有調用TextView.setText()即使加載了幾個屏幕的信息,您也不應該遇到問題。如果字符串超長,您可能會考慮延遲加載部分內容。
既然不能從不同的線程訪問的TextView,
您可以使用不同的Thread
仍然訪問TextView
。不知道你的代碼它很難給出一個很好的例子,但可以使用runOnUiThread
或
你可以使用一個AsyncTask
。這樣做,你可以做任何你需要在doInBackground()
和設置文字onPostExecute()
雖然,我不知道你的字符串需要幾秒鐘加載多久。如果你正在做很多工作來把字符串放在一起,那麼我會建議使用AsyncTask
這需要使用ListView,每行都是單獨的TextView嗎? – jkau
不,將字符串拆分成數組。然後,您只需跟蹤textview中的滾動位置:當它靠近底部時,使用append()將更多文本加載到視圖中。所以textview.append(array.get(position));. –
有意思的是,我需要自己定製textview嗎? – jkau