我正在登录屏幕上,您基本上可以选择是否需要4位PIN访问权限或滑动方法安全性;我希望这样看的方式是布局中有两个复选框,最初它们都是未选中的。当您选择一个时,它会被检查,但如果您尝试选择另一个,它会自动取消选中第一个。我在布局中定义了两个复选框,但是我有点困惑,因为我必须引用它来强制取消选中。
public void onCheckBoxClicked(View view){
boolean checked = ((CheckBox)view).isChecked();
switch(view.getId()){
case R.id.setupCheckBox1:
if(checked){
}
基本上,我知道如果{}语句自动取消检查setupCheckBox2,那么必须要考虑一些事情,但我只是不确定必须做什么是假的。任何帮助表示赞赏!
另外,我意识到这是一个单行答案,如果有人对Android中的复选框有任何好的参考,我也不介意阅读,我对这些东西都是新手。
答案 0 :(得分:2)
答案 1 :(得分:1)
非常简单,试试这段代码
public onCreate(Bundle savedInstanceState)
{
cbx_hindi.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked)
{
cbx_english.setChecked(false);
}
}
});
cbx_english.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked)
{
cbx_hindi.setChecked(false);
}
}
});
}
答案 2 :(得分:0)
使用此代码并在logcat中查看所选的ckeck box值.....
public class MainActivity extends Activity implements OnClickListener {
CheckBox hindi, english;
Button submit;
String language;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
hindi = (CheckBox) findViewById(R.id.checkBox1);
english = (CheckBox) findViewById(R.id.checkBox2);
submit = (Button) findViewById(R.id.submit);
submit.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.submit:
if(hindi.isChecked())
{
language="hindi" ;
}
if(english.isChecked())
{
language="english" ;
}
if((hindi.isChecked()==true)&&(english.isChecked()==true))
{
Toast.makeText(DrivingTestActivity.this,
"please select one language", Toast.LENGTH_LONG).show();
}
else
{
System.out.println("language" + language);
}
break;
default:
break;
}
}
}