我使用ListView來顯示我的項目。當項目改變我更新適配器列表,並調用notifyDataSetChanged()
:Android ListView無法正常刷新
MyAdapter adapter = (MyAdapter) myListView.getAdapter();
if(adapter == null) {
adapter = new MyAdapter(this, itemList);
myListView.setAdapter(adapter);
}
adapter.notifyDataSetChanged();
這似乎在某種程度上工作,因爲我的ListView顯示更多的項目,但在列表中的新項目沒有得到正確顯示。
這些項目不顯示任何信息。看起來適配器沒有刷新這些新項目。
適配器看起來像這樣(簡化):
public View getView(int position, View convertView, ViewGroup parent) {
Point point = getItem(position);
if (convertView == null)
convertView = LayoutInflater.from(getContext()).inflate(R.layout.item_point, parent, false);
TextView firstLine = (TextView) convertView.findViewById(R.id.firstLine);
firstLine.setText(point.getNumber());
}
請檢查控制檯。數據是否正確檢索或不。如果它是正確的,並檢查項目的大小。 – sivaprakash
數據沒有問題。 –
也許數據不會傳遞給數組列表。你嘗試過adapter.notifyItemInserted(arraylistsize) – sivaprakash