1. 程式人生 > >RadioGroup中設定某個RadioButton無法點選

RadioGroup中設定某個RadioButton無法點選

  • RadioGroup佈局
<RadioGroup
    android:id="@+id/rb_money"
    android:layout_width="match_parent"
    android:layout_height="39dp"
    android:layout_alignParentRight="true"
    android:layout_marginLeft="15dp"
    android:layout_marginTop="8dp"
    android:layout_marginRight="15dp"
    android:orientation="horizontal"
    android:padding="2dp">

    <RadioButton
        android:id="@+id/rb_money_min"
        style="@style/Style_Text_Size_14sp"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:layout_weight="1"
        android:background="@drawable/selector_borrow_money_day_bg"
        android:button="@null"
        android:checked="true"//預設選中該RadioButton
        android:gravity="center"
        android:text="₱ 3,000"
        android:textColor="@drawable/selector_borrow_money_day_text_color"
        android:textStyle="bold" />

    <TextView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_weight="1" />

    <RadioButton
        android:id="@+id/rb_money_max"
        style="@style/Style_Text_Size_14sp"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:layout_weight="1"
        android:background="@drawable/selector_borrow_money_day_bg"
        android:button="@null"
        android:gravity="center"
        android:text="₱ 5,000"
        android:textColor="@drawable/selector_borrow_money_day_text_color"
        android:textStyle="bold" />
</RadioGroup>
  • 程式碼
rbMoney.setOnCheckedChangeListener((RadioGroup group, @IdRes int checkedId) -> {
    //點選某個RaidoButton的時候,RadioGroup會執行該回調方法,此時設定另一個RadioButton為選中狀態,這樣就可以實現RadioButton只能某一個RaidoButton可以點選,另一個RaidoButton點選無效的效果。
    rbMoney.check(R.id.rb_money_min);
});