@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 2) {
String kpn = data.getStringExtra("kupeno");
txtddtyKupeNo.setText(kpn);
}
if (resultCode == 3) {
ArrayList<BuzagiKayitDBean> arraylist = data.getParcelableArrayListExtra("mylist");
adapter = new BuzagiListAdapter(dty, BuzagiKayitActivity.this);
for (BuzagiKayitDBean item : arraylist) {
dty.add(item);
}
if (buzlist.getCount() > 0) {
buzlist.setAdapter(adapter);
adapter.notifyDataSetChanged();
} else {
buzlist.setAdapter(adapter);
}
}
}
并且listview没有任何变化?我做错了什么? tyvm。
编辑(改变了这样但仍然没有刷新。我有2个项目在列表但只显示1) 编辑2(升级代码,但仍然没有工作)
答案 0 :(得分:1)
首先,尽快初始化adapter
,添加致电setAdapter();
然后,当您准备好数据时,为您的适配器添加一个方法,就像appendList(List<T> list)
一样,将数据附加到适配器!
public void appendList(DailyStories dailyStories) {
//todo addList()
notifydatasetChanged();
}
我建议您使用RecycleView
替换ListView
,它更强大!!
答案 1 :(得分:0)
您必须更改逻辑,因为如果您每次输入此代码的平静buzlist.getCount() > 0
,则adapter
将离开null
您没有初始化或设置适配器。或者无论哪种方式,您必须设置适配器,当您的列表&gt; 0 时。