每次点击增加或减少后为什么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;
}
在方法内部,您只需创建onclick侦听器。方法返回的值应该与调用函数之前的初始值相同。
调用函数increasedecrease时执行Toast和return行,而不是单击按钮时执行。