Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/187.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android使用DataSetObserver刷新自定义ListView_Java_Android_Android Listview_Notifydatasetchanged - Fatal编程技术网

Java Android使用DataSetObserver刷新自定义ListView

Java Android使用DataSetObserver刷新自定义ListView,java,android,android-listview,notifydatasetchanged,Java,Android,Android Listview,Notifydatasetchanged,我正在为listview使用自定义适配器,并为自定义数据创建了一个类 目前我正在CustomAdapter类中实现ListAdapter 通过使用ListAdapter实现,我不会在添加新数据时调用NotifyDataSetChange。我扩展了BaseAdapter并尝试使用notifyDataSetChanged,它正在工作,但只有当我单击活动中的另一个控件时,数据才会被加载 日期=新的DatePickerDialog.OnDateSetListener(){ @凌驾 公共无效onDate

我正在为listview使用自定义适配器,并为自定义数据创建了一个类

目前我正在CustomAdapter类中实现ListAdapter

通过使用ListAdapter实现,我不会在添加新数据时调用NotifyDataSetChange。我扩展了BaseAdapter并尝试使用notifyDataSetChanged,它正在工作,但只有当我单击活动中的另一个控件时,数据才会被加载


日期=新的DatePickerDialog.OnDateSetListener(){
@凌驾
公共无效onDateSet(日期选择器视图,整数年,整数月,
整数(每月的第几天){
//TODO自动生成的方法存根
myCalendar.set(Calendar.YEAR,YEAR);
myCalendar.set(Calendar.MONTH,monthOfYear);
myCalendar.set(Calendar.DAY\u OF\u MONTH,dayOfMonth);
if(isFrom){
from=sdf.format(myCalendar.getTime());
setText财政年度(自);
}否则{
to=sdf.format(myCalendar.getTime());
tY.setText(to);
}
getTransactions();
}
};
getTransactions();当在from字段中选择日期时,将调用。 但是,只有当我单击to字段时,数据才会显示在ListView中

private void getTransactions(){
游标c=billnDB.getBill();
billData.clear();
TransactionBillData数据=新建TransactionBillData();
数据。立标编号(“ID”);
数据。立箱编号(“票据编号”);
数据。设置日期(“日期”);
数据集总计(“总计”);
添加(数据);
if(c.moveToFirst()){
Log.v(“产品移到第一位”、“真实”);
做{
Log.v(“票据编号”,c.getString(c.getColumnIndex(“编号”));
数据=新的TransactionBillData();
data.setBill_编号(c.getString(c.getColumnIndex(“编号”));
data.setDate(c.getString(c.getColumnIndex(“日期”));
data.setTotal(c.getString(c.getColumnIndex(“total”));
添加(数据);
adapter.notifyDataSetChanged();
addLayout(c.getInt(c.getColumnIndex(“id”)),
c、 getString(c.getColumnIndex(“数字”)),
c、 getString(c.getColumnIndex(“日期”),
c、 getString(c.getColumnIndex(“总计”);
}而(c.moveToNext());
}
}
这是我的适配器

公共类事务BillAdapter扩展BaseAdapter实现ListAdapter{
...
}
我需要另一个选项,而不是notifyDataSetChanged()