基於點擊按鈕,我必須做一些處理,需要一些時間。所以我決定在主UI線程的一個單獨線程中執行此操作。將更新/數據從一個線程發送到Android中的UI線程
現在,基於單獨線程中的計算,我在創建此新線程的UI線程主類中調用一個函數。在這個功能中,我更新了UI。我被告知這不會工作,因爲我需要調用主UI線程。
有人可以幫助我嗎?
@Override
public void onListItemClicked(int index, Map<String, Object> data) {
new Thread(new Runnable() {
@Override
public void run() {
// Issue command() on a separate thread
wasCommandSuccess(command());
}
}).start();
}
private void wasCommandSuccess(boolean result){
if (result == false){
getUI(BasicUI.class).showAlert("Command failed!", "Unable to access");
}
}
你通常會使用AsyncTask來做到這一點。不過,我敢打賭,在網絡上進行簡單的搜索會告訴你。請參閱http://stackoverflow.com/q/4369537/1856738 – 2013-04-10 09:21:55
我的課程已經擴展了另一個課程 – Sunny 2013-04-10 09:26:26
是的,那又如何?你必須實現你的線程,所以你可以實現一個AsyncTask,不是嗎? – 2013-04-10 09:28:02