說我有一個活動在屏幕上顯示一些內容。我需要異步地執行一些方法(asyncMethod),當它完成時,我需要在屏幕上更新數據。什麼是最正確和最簡單的方法呢?在Android中異步執行方法的最佳方式(緊湊且正確)
目前我所知道的最簡單的方法是使用線程:
new Thread(new Runnable() {
public void run() {
asyncMethod();
}
}).start();
我熟悉的AsyncTask,但它比使用線程更復雜,每個方法我需要運行異步有必要創建新的AsyncTask,同時這大大增加了代碼大小。
我想到了一些通用的AsincTask,它將方法作爲參數並執行它,但據我所知,在Java中不可能將方法作爲參數傳遞。
換句話說,我正在尋找非常緊湊(但正確)的方式來異步執行方法。
爲此,您可以使用通用異步任務方法。您可以爲Async創建Generic超類,並從doInBackground和onPostExecute方法調用兩個方法。這些方法可以通過覆蓋這些方法在活動中使用。 – 2013-05-01 11:38:46