我正在嘗試做一些非常簡單的事情,但不知何故沒有得到方向。這是我想要完成的。從外部UI線程更新gridview
在我的GridView活動中,我從sdcard位置載入多達10張照片。然後,使用菜單選項「加載更多」,我想從另一個SD卡位置加載多達50張照片並刷新GridView以顯示所有照片(不想再次使用新項目調用GridView活動)
從外部線程或菜單觸發的選項刷新GridView(它在主UI線程中定義)是我期待的。任何建議將不勝感激。
我正在嘗試做一些非常簡單的事情,但不知何故沒有得到方向。這是我想要完成的。從外部UI線程更新gridview
在我的GridView活動中,我從sdcard位置載入多達10張照片。然後,使用菜單選項「加載更多」,我想從另一個SD卡位置加載多達50張照片並刷新GridView以顯示所有照片(不想再次使用新項目調用GridView活動)
從外部線程或菜單觸發的選項刷新GridView(它在主UI線程中定義)是我期待的。任何建議將不勝感激。
您在菜單中定義刷新選項的唯一和最合適的選項,然後觸發將處理後臺操作的AsyncTask
,然後更新結果的Ui。
檢查AsyncTask瞭解更多信息。
http://developer.android.com/resources/articles/painless-threading.html
您不能在UI線程之外訪問您的GridView。
你使用的是ASynchTask?如果是這樣,請覆蓋onPostExecute()
併發起一個事件。
您可以從另一個線程調用runOnUiThread():
runOnUiThread(new Runnable() { public void run() {
// update your GridView here...
}});
就證明非常鏈接您發佈,'AsyncTask'肯定不是唯一的選擇。儘管這肯定是一個合理的選擇,但它也不一定是「最合適的」。 – kabuko