溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Android中怎么使用RadioGroup實(shí)現(xiàn)多行顯示效果

發(fā)布時(shí)間:2021-06-11 15:13:53 來(lái)源:億速云 閱讀:197 作者:Leah 欄目:移動(dòng)開發(fā)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)Android中怎么使用RadioGroup實(shí)現(xiàn)多行顯示效果 ,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

1、布局如下:

<RadioGroup
      android:id="@+id/rg_manhole_state_one"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_marginTop="5dp"
      android:layout_toRightOf="@id/tv_manhole_state"
      android:orientation="horizontal"
      android:paddingTop="@dimen/padding_5">
 
      <RadioButton
       android:id="@+id/rb_intact"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:button="@null"
       android:drawableLeft="@drawable/bg_radiobutten"
       android:drawablePadding="@dimen/padding_10"
       android:text="@string/intact"
       android:textColor="@color/white"
       android:textSize="@dimen/small_size" />
 
      <RadioButton
       android:id="@+id/rb_lose"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_marginLeft="30dp"
       android:button="@null"
       android:drawableLeft="@drawable/bg_radiobutten"
       android:drawablePadding="@dimen/padding_10"
       android:text="@string/lose"
       android:textColor="@color/white"
       android:textSize="@dimen/small_size" />
 
      <RadioButton
       android:id="@+id/rb_sunken"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_marginLeft="30dp"
       android:button="@null"
       android:drawableLeft="@drawable/bg_radiobutten"
       android:drawablePadding="@dimen/padding_10"
       android:text="@string/sunken"
       android:textColor="@color/white"
       android:textSize="@dimen/small_size" />
     </RadioGroup>
     <RadioGroup
     android:id="@+id/rg_manhole_state_two"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_marginLeft="@dimen/padding_100"
     android:layout_marginTop="5dp"
     android:orientation="horizontal"
     android:paddingTop="@dimen/padding_5">
 
     <RadioButton
      android:id="@+id/rb_occupation"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:button="@null"
      android:drawableLeft="@drawable/bg_radiobutten"
      android:drawablePadding="@dimen/padding_10"
      android:text="@string/occupation"
      android:textColor="@color/white"
      android:textSize="@dimen/small_size" />
 
     <RadioButton
      android:id="@+id/rb_damage"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_marginLeft="30dp"
      android:button="@null"
      android:drawableLeft="@drawable/bg_radiobutten"
      android:drawablePadding="@dimen/padding_10"
      android:text="@string/damage"
      android:textColor="@color/white"
      android:textSize="@dimen/small_size" />
 
     <RadioButton
      android:id="@+id/rb_heave"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_marginLeft="30dp"
      android:button="@null"
      android:drawableLeft="@drawable/bg_radiobutten"
      android:drawablePadding="@dimen/padding_10"
      android:text="@string/heave"
      android:textColor="@color/white"
      android:textSize="@dimen/small_size" />
</RadioGroup>

2、具體操作如下:

聲明控件: 

@InjectView(R.id.rg_manhole_state_one)
RadioGroup rgManholeStateOne;
@InjectView(R.id.rg_manhole_state_two)
RadioGroup rgManholeStateTwo;

設(shè)置監(jiān)聽:

rgManholeStateOne.setOnCheckedChangeListener(new OnMyManholeStateOneCheckedChangeListener());
rgManholeStateTwo.setOnCheckedChangeListener(new OnMyManholeStateTwoCheckedChangeListener());

實(shí)現(xiàn)單選:

private class OnMyManholeStateOneCheckedChangeListener implements RadioGroup.OnCheckedChangeListener {
 
  @Override
  public void onCheckedChanged(RadioGroup radioGroup, int position) {
   switch (position) {
    case R.id.rb_intact:
     if (rbIntact.isChecked())
      rgManholeStateTwo.clearCheck();
     break;
    case R.id.rb_lose:
     if (rbLose.isChecked())
      rgManholeStateTwo.clearCheck();
     break;
    case R.id.rb_sunken:
     if (rbSunken.isChecked())
      rgManholeStateTwo.clearCheck();
     break;
   }
  }
 }
 
 private class OnMyManholeStateTwoCheckedChangeListener implements RadioGroup.OnCheckedChangeListener {
 
  @Override
  public void onCheckedChanged(RadioGroup radioGroup, int position) {
 
   switch (position) {
    case R.id.rb_occupation:
     if (rbOccupation.isChecked())
      rgManholeStateOne.clearCheck();
     break;
    case R.id.rb_damage:
     if (rbDamage.isChecked())
      rgManholeStateOne.clearCheck();
     break;
    case R.id.rb_heave:
     if (rbHeave.isChecked())
      rgManholeStateOne.clearCheck();
     break;
   }
  }
 }

上述就是小編為大家分享的Android中怎么使用RadioGroup實(shí)現(xiàn)多行顯示效果 了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI