回调

用在适配器:

private OrderItemClickListener itemClickListener;

public OrderFromAdapter(ArrayList<Goods> list,Context context,OrderItemClickListener itemClickListener){
    this.context = context;
    this.list=list;
    this.itemClickListener = itemClickListener;
    inflater=LayoutInflater.from(context);
    isSelected = new HashMap<Integer, Boolean>();//选中的复选框
    initDate();
}


主界面:

public class SPMainActivity extends SPBaseActivity  implements AdapterView.OnItemClickListener, OrderFromAdapter.OrderItemClickListener {

adapter = new OrderFromAdapter(listOrder, SPMainActivity.this,this);


public interface OrderItemClickListener{
    public void itemClickedSelect(int position, ViewHolder viewHolder);
    public void itemNumClick(int position, ViewHolder viewHolder);
}

public class MyOnClickListner implements View.OnClickListener {
    int position;
    ViewHolder viewHolder;
    public MyOnClickListner(int position, ViewHolder viewHolder) {
        this.position = position;
        this.viewHolder = viewHolder;
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.number:
                if(itemClickListener!=null){
                    itemClickListener.itemNumClick(position,viewHolder);
                }
                break;
            case R.id.check_option:
                if(itemClickListener!=null){
                    itemClickListener.itemClickedSelect(position,viewHolder);
                }
                break;
        }
    }
}



    @Override
    public void itemClickedSelect(int position, OrderFromAdapter.ViewHolder viewHolder) {
//        viewHolder.checkBox.toggle();//切换checkBox的可见状态
        OrderFromAdapter.getIsSelected().put(position, viewHolder.checkBox.isChecked());
        // 调整选定条目
        if (viewHolder.checkBox.isChecked() == true) {
            checkNum++;
        } else {
            checkNum--;

        }
        if (checkNum == 0) {//清空为0时不显示数字0
            left_xiaokuohao.setVisibility(View.INVISIBLE);
            right_xiaokuohao.setVisibility(View.INVISIBLE);
            clearNumber.setText("");

        } else {
            left_xiaokuohao.setVisibility(View.VISIBLE);
            right_xiaokuohao.setVisibility(View.VISIBLE);
            clearNumber.setText("" + checkNum);
        }
    }

    @Override
    public void itemNumClick(int position, OrderFromAdapter.ViewHolder viewHolder) {
        if(!listOrder.get(position).isSH()){
            showNum(position);
        }
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值