我有一个基本适配器,基本适配器的 getView() 中有三个视图。2 个文本视图和一个删除按钮。
第一个文本视图是产品名称,第二个文本视图是计数器(从购物车中购买了多少产品),第三个是删除按钮。
比如说,衬衫 2 delete_button 勺子 1 delete_button 餐具 3 delete_button。
现在,问题是当我单击第一个删除按钮时,最后一个 textview 的值会减少。
以下是我的代码。
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View v = convertView;
if(v == null) {
v = inflater.inflate(R.layout.shop_billing_row_layout, parent, false);
txt_product_name = (TextView) v.findViewById(R.id.txt_view_product_name);
txt_count = (TextView) v.findViewById(R.id.txt_count);
btn_delete = (Button) v.findViewById(R.id.btn_delete_prodcut);
btn_delete.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
// TODO Auto-generated method stub
Log.i("Test", "******** position delete: " + position);
if(array_list_products.get(position).getCounter() > 0) {
if(array_list_products.get(position).getCounter() != 1) {
array_list_products.get(position).setCounter(array_list_products.get(position).getCounter() - 1);
txt_count.setText("");
txt_count.setText("" + (array_list_products.get(position).getCounter() - 1));
}
}
}
});
我认为问题在于文本视图位于最后一个位置,并且我正在单击位于第一个位置的删除按钮,因此最后一个文本视图的值正在递减。