我试图通过将项目添加到GalleryView
并在从Adapter
的doInBackground
方法内部调用的处理程序中执行以下操作来刷新带有新项目的AsyncTask
。
private final Handler handler = new Handler() {
public void handleMessage(Message msg) {
if(msg.arg1 == 1){
gaAdapter.notifyDataSetChanged();
ga.setAdapter(gaAdapter);
ga.setSelection(midposition);
}
}
};
GalleryView
似乎响应上述代码,但不会自动刷新。仅在水平滚动时才更新项目。如何自动执行此操作? 最佳答案
UI线程需要涉及notifyDataChanged(),请尝试以下操作:
runOnUiThread(new Runnable() {
public void run() {
gaAdapter.add(newListItem);
gaAdapter.notifyDataSetChanged();
ga.setSelection(midposition);
}
});