[英]every button click to change text view
i coded this lines to change textview1 Continuous when user clicked button but it sucks at value 1 in output why :\\ 我对这行代码进行了更改,以更改textview1当用户单击按钮时连续,但是为什么输出中的值是1:\\
public class dobeyti extends AppCompatActivity { 公共类dobeyti扩展了AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dobeyti);
final TextView tView;
Button mButton;
tView = (TextView)findViewById(R.id.textView1);
mButton = (Button)findViewById(R.id.button);
assert mButton != null;
mButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int num = 0;
num++;
tView.setText(Integer.toString(num));
}
});
}
}
Becuase you defined the num value inside the onclick method so it will be reassigned to 0 every time. 因为您在onclick方法中定义了num值,所以每次都会将其重新分配为0。
Just put int num=0
outside the method like below: 只需将
int num=0
放在如下所示的方法之外:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dobeyti);
final TextView tView;
Button mButton;
tView = (TextView)findViewById(R.id.textView1);
mButton = (Button)findViewById(R.id.button);
assert mButton != null;
mButton.setOnClickListener(new View.OnClickListener() {
int num = 0;
@Override
public void onClick(View v) {
num++;
tView.setText(Integer.toString(num));
}
});
}
}
Move int num = 0; 移动int num = 0; outside OnClickListener.
在OnClickListener之外。 Every time you click button value on variable num is set to 0 -> increased to 1 and set as text, that is why it stuck at 1.
每次单击变量num上的按钮值时,将其设置为0->增大为1并设置为文本,这就是为什么它停留在1的原因。
int num = 0;
mButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
num++;
tView.setText(Integer.toString(num));
}
});
}
} }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.