简单实现4个RadioButton2行显示(实现互斥)

  • Post author:
  • Post category:其他




1.xml

2个RadioGroup,id分别为rg_zzmm1,rg_zzmm2

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/zzmm" />
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >
            <RadioGroup
                android:id="@+id/rg_zzmm1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal" >
                <RadioButton
                    android:id="@+id/rb_qz"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/qz" />
                <RadioButton
                    android:id="@+id/rb_ty"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/ty" />
            </RadioGroup>
            <RadioGroup
                android:id="@+id/rg_zzmm2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal" >
                <RadioButton
                    android:id="@+id/rb_dy"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/dy" />
                <RadioButton
                    android:id="@+id/rb_qt"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/qt" />
            </RadioGroup>
        </LinearLayout>
    </LinearLayout>



2.MainActicity.java

//政治面貌
	private RadioGroup rg_zzmm1,rg_zzmm2;
	private boolean checkRdio;
	rg_zzmm1 = (RadioGroup)findViewById(R.id.rg_zzmm1);
	rg_zzmm2 = (RadioGroup)findViewById(R.id.rg_zzmm2);
	rg_zzmm1.setOnCheckedChangeListener(new onCheckChange());
	rg_zzmm2.setOnCheckedChangeListener(new onCheckChange());

监听类

class onCheckChange implements android.widget.RadioGroup.OnCheckedChangeListener {

		@Override
		public void onCheckedChanged(RadioGroup group, int checkedId) {
			// TODO 自动生成的方法存根
			if(checkRdio) return;
			
			if(group.getId() == R.id.rg_zzmm1) {
				checkRdio = true;
				rg_zzmm2.clearCheck();
				checkRdio = false;
			}
			
			if(group.getId() == R.id.rg_zzmm2) {
				checkRdio = true;
				rg_zzmm1.clearCheck();
				checkRdio = false;
			}
		}
		
	}

获取值

	for(int i=0; i<rg_zzmm1.getChildCount();i++) {
		RadioButton r = (RadioButton)rg_zzmm1.getChildAt(i);
		if(r.isChecked()) {
			zzmm = r.getText().toString();
		}
	}
	for(int i=0; i<rg_zzmm2.getChildCount();i++) {
		RadioButton r = (RadioButton)rg_zzmm2.getChildAt(i);
		if(r.isChecked()) {
			zzmm = r.getText().toString();
		}
	}



版权声明:本文为qq_47000934原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。