我有一个带两个radiobutton的无线电组.每个按钮都有一个自定义选择器 我希望选择器中的drawable可以填充单选按钮的宽度.在不同分辨率下,按钮看起来不同.我没有使用9补丁,所以这是有道理但即使我是我不知道如何使按钮拉伸拉伸.下面是无线电组和选择器的代码.宽度不同于摆弄.
布局xml:
<RadioButton
android:id="@+id/radiomale"
android:layout_width="126dp"
android:layout_height="50dp"
android:minHeight="50dp"
android:minWidth="126dp"
android:button="@layout/signupmale"
/>
<RadioButton
android:id="@+id/radiofemale"
android:layout_width="128dp"
android:layout_height="50dp"
android:minHeight="50dp"
android:minWidth="128dp"
android:button="@layout/signupfemale" />
</RadioGroup>
Run Code Online (Sandbox Code Playgroud)
选择器:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:state_window_focused="false"
android:drawable="@drawable/genre_male_pressed" />
<item android:state_checked="false" android:state_window_focused="false"
android:drawable="@drawable/genre_male" />
<item android:state_checked="true" android:state_pressed="true"
android:drawable="@drawable/genre_male_pressed" />
<item android:state_checked="false" android:state_pressed="true"
android:drawable="@drawable/genre_male" />
<item android:state_checked="true" android:state_focused="true"
android:drawable="@drawable/genre_male_pressed" />
<item android:state_checked="false" android:state_focused="true"
android:drawable="@drawable/genre_male" />
<item android:state_checked="false" android:drawable="@drawable/genre_male" android:scaleType="fitXY" />
<item android:state_checked="true" android:drawable="@drawable/genre_male_pressed" android:scaleType="fitXY"/>
</selector>
Run Code Online (Sandbox Code Playgroud)
问题是在按钮之间的不同分辨率间隙测试时.谢谢你的帮助.
sga*_*man 10
RadioGroup实际上是LinearLayout的子类,所以你可以做的是使用子节点的layout_weight来控制间距.这可能有点帮助:Android中的线性布局和权重 以及此Android layout_weight comportment
<RadioGroup
android:layout_width="match_parent"
android:layout_height="45dip"
android:weightSum="1"
android:orientation="horizontal"
>
<RadioButton
android:layout_width="match_parent"
android:layout_height="40dip"
android:layout_weight=".5"
/>
<RadioButton
android:layout_width="match_parent"
android:layout_height="40dip"
android:layout_weight=".5"
/>
</RadioGroup>
Run Code Online (Sandbox Code Playgroud)
您将需要使用ninepatch,如果单选按钮上有文本,可能会向左或向右使用填充.
| 归档时间: |
|
| 查看次数: |
3896 次 |
| 最近记录: |