将多个值添加到textView-Android [英] Adding multiple values to a textView - Android
问题描述
我目前正在尝试制作一个包含4个切换按钮和一个textview的基本应用程序.这个想法很简单:当按下一个按钮时,文本视图将显示当前正在按下的按钮.这可以包括多个按钮(例如,如果按下了1、3和4).这是我为此编写的代码:
I'm currently trying to make a basic app that incorporates 4 toggle buttons and a textview. The idea is simple: When a button is pressed, the textview will show which buttons are currently being pressed. This can include multiple buttons (such as if, for example 1, 3, and 4 were pressed). Here's the code I've written for it:
TextView按钮;
TextView buttons;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
buttons = (TextView)findViewById(R.id.textView1);
}
public void buttonPressed(View v){
boolean check = ((ToggleButton)v).isChecked();
int b1 = 1, b2 = 2, b3 = 3, b4 = 4;
switch(v.getId()){
case R.id.toggleButton1:
if(check){
buttons.setText("Buttons pressed: " + b1);
}
else{
buttons.setText("Buttons pressed:");
}
break;
case R.id.toggleButton2:
if(check){
buttons.setText("Buttons pressed: " + b2);
}
else{
buttons.setText("Buttons pressed:");
}
break;
case R.id.toggleButton3:
if(check){
buttons.setText("Buttons pressed: " + b3);
}
else{
buttons.setText("Buttons pressed:");
}
break;
case R.id.toggleButton4:
if(check){
buttons.setText("Buttons pressed: " + b4);
}
else{
buttons.setText("Buttons pressed:");
}
break;
default:
break;
}
}
不幸的是,每次我运行该程序时,textview都会被覆盖,并且我无法获取它来验证是否按下了多个按钮.欢迎提出所有建议.
Unfortunately, every time I run this program, the textview is overwritten, and I can't get it to validate that multiple buttons are pressed. All suggestions are welcome.
推荐答案
如果您希望textview总是显示ON按钮的数量,我想您可以这样做:
If you want your textview always show number of ON buttons, I think you can do this way :
保持按钮的轨迹
private ToggleButton[] btns = new ToggleButton[4];
在onCreate()中:
In onCreate():
btn[0] = (ToggleButton)findViewById(R.id.toggleButton1);
btn[1] = (ToggleButton)findViewById(R.id.toggleButton2);
btn[2] = (ToggleButton)findViewById(R.id.toggleButton3);
btn[3] = (ToggleButton)findViewById(R.id.toggleButton4);
然后在您的buttonPressed处理程序中:
Then in your buttonPressed handler :
String text = "Buttons pressed: ";
for (int i = 0; i < 4; i++) {
if (btn[i].isCheck()) {
text += (i + 1) + ", ";
}
}
buttons.setText(text);
这篇关于将多个值添加到textView-Android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!