我無法弄清楚這是如何在android中完成的。這是一個非常簡單的應用程序,TextView佔據了屏幕的大部分,並在底部有一個ToggleButton。當手機上的按鈕每隔5秒鐘通過一個套接字請求新數據時,這個新數據就必須預置在TextView的頂部。Android更新UI主線程問題
因爲你不想做的5秒定時器或網絡活動中我一直在使用的AsyncTask,但線程主線程外無法更新TextView的主線程。
下面是一些僞代碼我在做什麼。我怎樣才能讓updateView在每次收到新數據時被調用,但是從主線程中調用呢?爲TextView的
public class MyActivity {
//setContentView
//setup network connection
//getTextView
//getToggleButton
//when clicked on start asynctask GetData
//when clicked off stop GetData (set global boolean to false)
}
public void updateView(){
//take linked list and make one String of proper size for textview
//setTextView
}
private class GetData extends AsyncTask {
//while we want to get data (global boolean variable)
//send request
//wait for response
//*update global text variable for the view*
//sleep for 5 seconds
}
謝謝你這樣做,如果我可以選擇多個正確的答案,我會的。感謝幫助。 – Michael