DatasetObserver是Observer的一个子类 针对于adapter设计的 当调用notifydatasetchanged的时候就会触发回调的方法
adapter.registerObserver(observer);绑定
adapter.registerObserver(observer);适当的位置解绑
private DataSetObserver sumObserver=new DataSetObserver() { //当使用adapter.datasetchanged方法时调用 @Override public void onChanged() { //TODO 计算总金额 double sum=0; for(CarItem item:items) { int count=item.getCount(); float price=item.getProductPrice(); sum+=(price*count); } // Log.d("Cart","total="+sum); txtTotal.setText(""+sum); } @Override public void onInvalidated() { }};
时间: 2024-10-24 22:12:36