如何在android中自定义单选按钮

问题描述 投票:0回答:2

我正在 Android 应用程序中创建单选按钮,但我想对其进行自定义。但我不知道该怎么做。我希望图像作为图标,图标下的文本如图所示。此外,我想在选择任何单选按钮时更改颜色。

我想要这种类型的单选按钮。请告诉我怎样才能做到?

java android xml android-studio radio-button
2个回答
0
投票

您可以使用自定义背景

<RadioButton
   android:id="@+id/radioButtom"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:background="@null"
   android:button="@drawable/custom_background"
   android:checked="true"
   android:text="Your Text" />

这里是

Custom_background.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item
    android:drawable="@drawable/your_regular_state_drawable"
    android:state_checked="true"
    android:state_pressed="true" />
<item
    android:drawable="@drawable/your_selected_state_drawable"
    android:state_pressed="true" />
<item
    android:drawable="@drawable/your_selected_state_drawable"
    android:state_checked="true" />
<item
    android:drawable="@drawable/your_regular_state_drawable" />

参考:您可以从这里获得更好的描述https://stackoverflow.com/a/19163987/12676247


0
投票
  <RadioGroup
                            android:id="@+id/radio_group_do_you_smoke"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_gravity="center"
                            android:layout_marginTop="16dp"
                            android:background="@drawable/transparent_drawable"
                            android:orientation="horizontal"
                            app:layout_constraintEnd_toEndOf="parent"
                            app:layout_constraintStart_toStartOf="parent"
                            app:layout_constraintTop_toBottomOf="@+id/textView119">

                            <RadioButton
                                android:id="@+id/radio_button_yes_1"
                                style="@style/BoldTextView"
                                android:layout_width="100dp"
                                android:layout_height="100dp"
                                android:background="@drawable/rbtn_selector"
                                android:button="@null"
                                android:checked="false"
                                android:foreground="@drawable/smoke_ic"
                                android:foregroundGravity="center"
                                android:gravity="center"
                                android:textAlignment="center"
                                android:textColor="@drawable/rbtn_textcolor_selector"
                                android:textSize="14dp"
                                tools:ignore="TextSizeCheck">

                            </RadioButton>
  </RadioGroup>

image

© www.soinside.com 2019 - 2024. All rights reserved.