Android中的单选按钮选择

时间:2014-02-13 06:53:29

标签: android checkbox view visible android-radiobutton

在我的项目中,我在一个广播组下面有两个单选按钮。默认情况下,第一个单选按钮被选中。当第一个单选按钮处于选中状态时,如果第二个单选按钮处于选中状态,则会看到四个复选框。所有四个复选框都将去了无形的状态。我不知道如何实现这一点。任何人都可以建议我吗?

谢谢!!!

4 个答案:

答案 0 :(得分:2)

太简单了。之前您提到第一次选择第一个单选按钮时,您必须只为可见的复选框设置可见性。像

 ch1.setVisibility(View.VISIBLE); // same for other checkboxes

当您选择第二个单选按钮时,设置该复选框的可见性 GONE 。像

 ch1.setVisibility(View.GONE);   // same for other checkboxes

更新:

 radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {

    @Override
    public void onCheckedChanged(RadioGroup group, int checkedId) {
        // TODO Auto-generated method stub
        if(checkedId == R.id.urfirstR1)
          {
                ch1.setVisibility(View.VISIBLE);

       else if(checkedId == R.id.ursecondr2)
          {
                ch1.setVisibility(View.GONE); 
          }
    }
});

答案 1 :(得分:0)

参考此参考并在此条件下完成您的工作 http://www.mkyong.com/android/android-radio-buttons-example/

选中一个布局下的所有复选框,并根据此示例隐藏或显示该布局

答案 2 :(得分:0)

试试这个

radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {

@Override
    public void onCheckedChanged(RadioGroup group, int checkedId) {

      if(checkedId == R.id.firstradiobutton)
               {
                 // visible all checkbox here
              }

       else if(checkedId == R.id.secondradiobutton)
              {
                  // invisible all checkbox here
              }
        }
    });

答案 3 :(得分:0)

尝试以下解决方案。

默认情况下,您无需执行任何操作。和onCheckchangelistener使用下面的代码。

radiobutton2.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(RadioGroup group, int checkedId) {
            ch1.setVisibility(View.INVISIBLE); 
           ch2.setVisibility(View.INVISIBLE); 
          ch3.setVisibility(View.INVISIBLE); 
        ch4.setVisibility(View.INVISIBLE); 
        }
    });

将它放在onCreate方法中。并根据您的ID名称替换复选框的ID名称和单选按钮。