这里我有我的产品的ListView。我想更新totalBill TextView,它在活动中但不在ListView中,只要用户点击ListView中的添加按钮。我的问题是,CustomAdapter不允许在按钮单击时更新活动类中的TextView。怎么做到这一点?
tvId = (TextView) v.findViewById(R.id.itemId);
tvName = (TextView) v.findViewById(R.id.itemName);
tvPrice = (TextView) v.findViewById(R.id.itemPrice);
tvQty = (TextView) v.findViewById(R.id.quantity);
plusButton = (ImageButton) v.findViewById(R.id.addButton);
minusButton = (ImageButton) v.findViewById(R.id.minusButton);
}
plusButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
int qty = Integer.parseInt(tvQty.getText().toString());
double itemPrice=Double.parseDouble(tvPrice.getText().toString());
tvQty.setText(String.valueOf(++qty));
ShoppingCart2 cart=new ShoppingCart2();
cart.addQuantity(qty, itemPrice);
}
});
以上代码位于CustomAdapter中,下面是活动类。
public void addQuantity(int quantity, Double itemPrice) {
try {
Double totalPrice = quantity * itemPrice;
totalBill = totalBill.add(BigDecimal.valueOf(totalPrice));
totalBill = totalBill.setScale(0, BigDecimal.ROUND_HALF_UP);
tvTotalBill = (TextView) findViewById(R.id.tvTotalBill);
tvTotalBill.setText(totalBill.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
我在addQuantity函数中遇到NullPointer异常。还有其他方法可以完成这项工作。