Plus/Minus 带有计数器的按钮,但计数器无法正常工作

Plus/Minus button with a counter but counter does not work properly

我有 2 个按钮和一个 TextView,用于根据按下加号或减号按钮的次数更新计数器。

但是,问题是:(例如)当我按“+”按钮到 4 并在按“-”按钮后下降到 3 时。然后,当我再次尝试按下“+”(添加)按钮时,它会跳到 5 而不是 4。(即,从上次按下“+”按钮时起,计数器继续加 1。

这是实现 ImageButtons 和 TextView 监听器的适配器class

    @NonNull
    @Override
    public Object instantiateItem(@NonNull ViewGroup container, int position) {

        //inflate layout flavor_item.xml
        View view = LayoutInflater.from(context).inflate(R.layout.flavor_item, container, false);

        //initialize UID views from flavor_item.xml
        ImageView imageIv = view.findViewById(R.id.imageIv);
        TextView flavorTv = view.findViewById(R.id.flavorTv);
        TextView quantityTv = view.findViewById(R.id.quantityTv);

        ImageButton minusbutton = (ImageButton) view.findViewById(R.id.minusbutton);
        ImageButton plusbutton = (ImageButton) view.findViewById(R.id.plusbutton);

        //getting data
        DashboardFlavorModel model = modelArrayList.get(position);
        String title = model.getTitle();
        int image = model.getImage();
        String qty = model.getQuantity();


        //setting data
        imageIv.setImageResource(image);
        flavorTv.setText(title);
        quantityTv.setText(qty);

        //plusbutton listener
        plusbutton.setOnClickListener(new View.OnClickListener() {
            int count = Integer.parseInt(model.getQuantity());
            @Override
            public void onClick(View view) {
                count++;
                model.setQuantity(""+count);
                quantityTv.setText(""+count);
            }
        });

        //listener
        minusbutton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                int i = Integer.parseInt(model.getQuantity());
                if (i > 0) {
                    i--;
                    model.setQuantity(""+i);
                    quantityTv.setText(""+i);
                } else{
                    Snackbar.make(view,"Cannot have < 0 QTY",Snackbar.LENGTH_SHORT).setAction("RETRY", new View.OnClickListener() {
                        @Override
                        public void onClick(View view) {
                            model.setQuantity("0");
                            quantityTv.setText(model.getQuantity());
                           }[![enter image description here][1]][1]
                    }).show();
                }

            }
        });

(注意***)我尝试使用 getter 和 setter 检查计数器以检查它是否有效并且确实有效所以我不知道为什么在“-”之后按“+” " 它不会只是从“-”按钮后的值 +1。

试试放

int count = Integer.parseInt(model.getQuantity());

在加号按钮 onclicklistener 的 onClick 内部