天天看點

android fragment listview adapter,android中 – Fragment中的notifyDataSetChanged()不重新整理listview...

我正在嘗試顯示從網址中提取的項目清單,但我隻想一次擷取其中的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();

}

});

但是清單視圖不會重新整理 – 隻有當我傳回并重新打開活動時 – 才會顯示新資料.

那麼如何通知擴充卡有新資料要顯示?