为什么每次点击后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侦听器。方法返回的值应该与调用函数之前的初始值相同。
Toast和return行是在调用increasereduce函数时执行的,而不是在单击按钮时执行的。