开发者

Radio Button Text over Button

开发者 https://www.devze.com 2023-04-01 09:00 出处:网络
I\'m trying to create a view in android that looks like: Text Radio Button 1 ... ... I thought it was simple enough but at least in the layout preview and emulator I\'m seeing the text for the Ra

I'm trying to create a view in android that looks like:

Text

  • Radio Button 1
  • ...
  • ...

I thought it was simple enough but at least in the layout preview and emulator I'm seeing the text for the RadioButton appear on top of the actual radio button (the circle), see the attached screen shot. I'm guessing this is something very trivial but I'm messed around with gravity and every other setting I can think of and nothing. Android 3.1 if that matters.

Here's my layout:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:background="@color/white"
  android:layout_width="match_parent"
  android:layout_height="match_parent">

<TextView android:id="@+id/question_text"
 开发者_StackOverflow   android:textColor="@color/primary_gray"
    android:layout_width="match_parent"
    android:text="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
        android:layout_height="wrap_content"/>

<RadioGroup android:id="@+id/multiple_choice_one_answer_group"
    android:background="@color/white"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

   <RadioButton
      android:background="@color/primary_gray"
      android:textColor="@color/black"
      android:textSize="10sp"
      android:text="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" />
</RadioGroup>

</LinearLayout>

Screenshot:

Radio Button Text over Button


The problem is setting the background. If you remove the background from the RadioButton and keep it on the RadioGroup, it has the effect you're looking for. In general, setting the background of a Button to everything removes the button look; try it on a regular Button and you'll see. This is because the background for a Button is already set to something, and you're replacing it with a flat color.

Try this instead:

<RadioGroup android:id="@+id/multiple_choice_one_answer_group"
    android:background="@color/primary_gray"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <RadioButton
        android:textColor="@color/black"
        android:textSize="10sp"
        android:text="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" />
</RadioGroup>


Setting the background in the java code instead of the layout solves this as well.

0

精彩评论

暂无评论...
验证码 换一张
取 消