如何在 Android 中使用 CheckBox 设置字符串
How to use CheckBox for set string in Android
在我的应用程序中我想使用 3 CheckBox
并且我想在检查每个 CheckBoxs
时将一个世界添加到我的 String
.
例如:我要3CheckBox
(chBoxFree,chBoxDownload , chBoxBuy) 并在检查每个 CheckBoxs
时添加 Free, Download, Buy into one String
and when uncheck CheckBox
remove 从这个 String
.
如果选中 chBoxFree,chBoxBuy 在此 string
值中添加 "free-buy"当 uncheck chBoxBuy, remove buy 从这个字符串
怎么办?
你可以观察onCheckedChanged
里面的checked/unchecked
,然后据此进行操作。
public class MainActivity extends AppCompatActivity implements CompoundButton.OnCheckedChangeListener {
private TextView textView;
private List<String> list = new ArrayList<>();
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.textview1);
CheckBox checkBox1 = findViewById(R.id.checkbox1);
CheckBox checkBox2 = findViewById(R.id.checkbox2);
CheckBox checkBox3 = findViewById(R.id.checkbox3);
checkBox1.setOnCheckedChangeListener(this);
checkBox2.setOnCheckedChangeListener(this);
checkBox3.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked) {
switch (buttonView.getId()) {
case R.id.checkbox1:
list.add("Free");
break;
case R.id.checkbox2:
list.add("Download");
break;
case R.id.checkbox3:
list.add("Buy");
}
} else {
switch (buttonView.getId()) {
case R.id.checkbox1:
list.remove("Free");
break;
case R.id.checkbox2:
list.remove("Download");
break;
case R.id.checkbox3:
list.remove("Buy");
}
}
textView.setText(TextUtils.join("-", list));
}
}
在我的应用程序中我想使用 3 CheckBox
并且我想在检查每个 CheckBoxs
时将一个世界添加到我的 String
.
例如:我要3CheckBox
(chBoxFree,chBoxDownload , chBoxBuy) 并在检查每个 CheckBoxs
时添加 Free, Download, Buy into one String
and when uncheck CheckBox
remove 从这个 String
.
如果选中 chBoxFree,chBoxBuy 在此 string
值中添加 "free-buy"当 uncheck chBoxBuy, remove buy 从这个字符串
怎么办?
你可以观察onCheckedChanged
里面的checked/unchecked
,然后据此进行操作。
public class MainActivity extends AppCompatActivity implements CompoundButton.OnCheckedChangeListener {
private TextView textView;
private List<String> list = new ArrayList<>();
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.textview1);
CheckBox checkBox1 = findViewById(R.id.checkbox1);
CheckBox checkBox2 = findViewById(R.id.checkbox2);
CheckBox checkBox3 = findViewById(R.id.checkbox3);
checkBox1.setOnCheckedChangeListener(this);
checkBox2.setOnCheckedChangeListener(this);
checkBox3.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked) {
switch (buttonView.getId()) {
case R.id.checkbox1:
list.add("Free");
break;
case R.id.checkbox2:
list.add("Download");
break;
case R.id.checkbox3:
list.add("Buy");
}
} else {
switch (buttonView.getId()) {
case R.id.checkbox1:
list.remove("Free");
break;
case R.id.checkbox2:
list.remove("Download");
break;
case R.id.checkbox3:
list.remove("Buy");
}
}
textView.setText(TextUtils.join("-", list));
}
}