我正在嘗試顯示從網址中提取的項目清單,但我隻想一次擷取其中的20個…是以我已經實作了一個OnScrollListener來擷取使用者在最後一項上的項目清單顯示.
提取的項目,但我唯一的問題是清單視圖沒有更新:這是我的代碼到目前為止:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
parentView = inflater.inflate(R.layout.activity_event_speakers_alphabetically, container,false);
listView = (ListView) parentView
.findViewById(R.id.speakersAlphabeticallyActivityList);
nameOrderedMembers.addDataBatch(communityMembers);
nameOrderedAdapter = DelegateViewStateAdapterFactory
.makeUserListAdapter(getActivity(),
nameOrderedMembers.getSortedData(), DelegateViewStateAdapterFactory.OrderType.NAME);
listView.setAdapter(nameOrderedAdapter);
AQuery aQuery = new AQuery(listView);
aQuery.id(R.id.speakersAlphabeticallyActivityList).scrolled(new EndlessScrollListener());
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView> arg0, View arg1, int arg2,
long arg3) {
if (nameOrderedAdapter.getItem(arg2) instanceof User) {
User u = (User) nameOrderedAdapter.getItem(arg2);
Intent i = new Intent(getActivity(),
UserProfileFragmentActivity.class);
startActivity(i);
}
}
});
return parentView;
}
現在 – 在onPostExecute方法的AsynkTask中 – 我像這樣通知擴充卡:
communityMembers.addAll(newMembers);
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
nameOrderedAdapter.addAll(communityMembers);
nameOrderedAdapter.notifyDataSetChanged();
}
});
但是清單視圖不會重新整理 – 隻有當我傳回并重新打開活動時 – 才會顯示新資料.
那麼如何通知擴充卡有新資料要顯示?