我试图为调查问题制作一个布局,它在我的设备上工作正常,但单选按钮文本之间的边距会在更好的屏幕分辨率设备上降低。
我尝试过创建不同的DIMENS但是我不确定如何根据不同的尺寸缩放边距。
请建议我需要创建的屏幕尺寸值-swXXX文件夹以及我定义的DIMEN的缩放系数。
由于
enter code here
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
android:id="@+id/tv_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="How often do you use it?"
android:textSize="15sp" />
<RadioGroup
android:id="@+id/rg_1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/tv_1"
android:layout_below="@+id/tv_1" >
<RadioButton
android:id="@+id/rb_once"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginTop="15dp"
android:button="@drawable/radio_btn"
android:checked="true"
android:text="Once" />
<RadioButton
android:id="@+id/rb_daily"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/rb_once"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
android:button="@drawable/radio_btn"
android:text="Daily" />
<RadioButton
android:id="@+id/rb_weekly"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/rb_daily"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
android:button="@drawable/radio_btn"
android:text="Weekly" />
<RadioButton
android:id="@+id/rb_monthly"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/rb_weekly"
android:layout_marginLeft="5dp"
android:layout_marginTop="5dp"
android:button="@drawable/radio_btn"
android:text="Monthly" />
</RadioGroup>
<ImageView
android:id="@+id/fb_share"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:src="@drawable/facebook_share" />
<ImageView
android:id="@+id/history"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignTop="@+id/fb_share"
android:layout_marginLeft="10dp"
android:src="@drawable/history" />
<ImageView
android:id="@+id/info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/fb_share"
android:layout_marginRight="10dp"
android:src="@drawable/info" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/fb_share"
android:layout_below="@+id/rg_1"
android:layout_centerHorizontal="true" >
<Button
android:id="@+id/send"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:background="@drawable/red_btn"
android:fontFamily="Roboto-Italic"
android:text="SAVE"
android:textColor="#ffffff" />
</RelativeLayout>
</RelativeLayout>
答案 0 :(得分:0)
您需要为目标设备创建值-swXXXX文件夹。即如果您的目标是最小宽度为600的平板电脑,那么您需要创建值-sw600等。
在布局文件中,更改RadioButton的声明如下:
<RadioButton
android:id="@+id/rb_once"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/left_margin"
android:layout_marginTop="@dimen/top_margin"
android:button="@drawable/radio_btn"
android:checked="true"
android:text="Once" />
并在值-swXXXX下维护特定于每个目标维度的dimen.xml,维度键具有相同的名称,但值对应于各自的维度。例如:
values/
<dimen name="left_margin">5dp</dimen>
<dimen name="left_margin">10dp</dimen>
values-sw600/
<dimen name="left_margin">20dp</dimen>
<dimen name="left_margin">40dp</dimen>