为什么num等于零,当我点击增加和减少也返回零,当它在它内面的吐司等于num

问题描述 投票:0回答:1

每次点击增加或减少后为什么num = 0?方法increasedecrease(...)总是返回0但在OnClickListner内部它将其值更改为实数。任何人都可以解释这种行为吗?

int num;

public int incraesedecrease( final titleHodler viewHolder) {

    viewHolder.increase.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            num = Integer.parseInt(viewHolder.textnum.getText().toString());
            num++;
            String txtnum = Integer.toString(num);
            viewHolder.textnum.setText(txtnum);
        }
    });

    viewHolder.decrease.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            num--;
            String txtnum=Integer.toString(num);
            if(num>0) {
                viewHolder.textnum.setText(txtnum);
            }

        }
    });

    Toast.makeText(context, ""+num, Toast.LENGTH_SHORT).show();

    return num;
}
java android arrays variables int
1个回答
0
投票

在方法内部,您只需创建onclick侦听器。方法返回的值应该与调用函数之前的初始值相同。

调用函数increasedecrease时执行Toast和return行,而不是单击按钮时执行。

© www.soinside.com 2019 - 2024. All rights reserved.