从右到左自定义单选按钮

时间:2017-01-05 14:23:22

标签: android xamarin radio-button

我看到了这个链接:Adding custom radio buttons in android

这比这张照片(我的设计)要好,但它离左边不对:

enter image description here

如何将单选按钮的文本放在该链接的按钮左侧? 谢谢

EDITED: 我想要这个输出但是从右到左

enter image description here

EDITED: 输出可能如下图所示?

enter image description here

3 个答案:

答案 0 :(得分:0)

您可以设置android:button="@null" ans然后使用android:drawable(position)将RadioButton的drawable方向定义为left, right, top and bottom,如下所示:

    <RadioButton
            android:id="@+id/rbYes"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:button="@null"
            android:drawableLeft="@android:drawable/btn_radio"
            android:text="RadioButton Text" />

修改1:

正如@Mubashar_Javed所说RadioGroup代表多RadioButton

或对于一个RadioButton只需在示例中添加RadioButton&#34; LinearLayout&#34;以这种形式:

             <LinearLayout
                android:gravity="center|right"
                android:layout_width="match_parent"
                android:layout_height="match_parent">
                 <RadioButton
                   android:id="@+id/rbName"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:button="@null"
                   android:drawableLeft="@android:drawable/btn_radio"
                   android:text="RadioButton Text" />
           </LinearLayout>

答案 1 :(得分:0)

按照下面的android:gravity="right"添加RadioButton

<RadioGroup
    android:id="@+id/radios"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_gravity="right"
    android:inputType="text"
    android:orientation="vertical" >

    <RadioButton
        android:id="@+id/first"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:background="@color/white"
        android:button="@null"
        android:drawablePadding="30dp"
        android:drawableRight="@android:drawable/btn_radio"
        android:text="first"
        android:textColor="@color/Black"
        android:textSize="20dip" 
        android:gravity="right"/>

    <RadioButton
        android:id="@+id/second"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@color/Black"
        android:button="@null"
        android:drawablePadding="30dp"
        android:drawableRight="@android:drawable/btn_radio"
        android:text="second"
        android:textColor="@color/White"
        android:textSize="20dp"
         android:gravity="right"/>

    <RadioButton
        android:id="@+id/third"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@color/Maroon"
        android:button="@null"
        android:drawablePadding="30dp"
        android:drawableRight="@android:drawable/btn_radio"
        android:text="third"
        android:textColor="@color/Vanilla"
        android:textSize="20dp"
        android:gravity="right" />
</RadioGroup>

答案 2 :(得分:-1)

编辑:这是一个具有正确RTL外观的新版本。

enter image description here

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:measureWithLargestChild="false"
    android:gravity="left">

    <RadioGroup
        android:id="@+id/radios"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_gravity="right"
        android:inputType="text"
        android:orientation="vertical">

        <RadioButton
            android:id="@+id/Radiobutton1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right"
            android:text="Radiobutton 1"
            android:button="@null"
            android:drawableRight="@android:drawable/btn_radio"
            android:gravity="center_vertical"
            android:checked="true"
            />

        <RadioButton
            android:id="@+id/Radiobutton2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right"
            android:text="Radiobutton 2"
            android:button="@null"
            android:drawableRight="@android:drawable/btn_radio"
            android:gravity="center_vertical"
            />
        <RadioButton
            android:id="@+id/Radiobutton3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right"
            android:text="Radiobutton 3"
            android:button="@null"
            android:drawableRight="@android:drawable/btn_radio"
            android:gravity="center_vertical"
            />

        <RadioButton
            android:id="@+id/Radiobutton4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right"
            android:text="Radiobutton 4"
            android:button="@null"
            android:drawableRight="@android:drawable/btn_radio"
            android:gravity="center_vertical"
            />

    </RadioGroup>

    <Button
        android:id="@+id/myButton"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/hello" />

</LinearLayout>

enter image description here