你好我的布局有问题我的布局适合所有屏幕当我在线性布局中设置它但线性布局中的问题是当我将View带到前面它会干扰其他视图现在我将所需的布局更改为相对布局其中我也带来了前面的视图,哪个工作完美,但现在问题在于相对布局是不同屏幕分辨率的硬编码值,所以我能为此做些什么,请帮助我,并提前致谢....... ..
这是我的布局代码......
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:orientation="vertical"
android:weightSum="1" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight=".8"
android:background="@drawable/prdttrans">
</LinearLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight=".2"
>
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/animimage"
android:background="@drawable/ab"/>
<ImageView
android:id="@+id/waterleftDisplayimg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="17dp"
android:layout_marginRight="39dp"
android:background="@drawable/ic_launcher" />
<ImageView
android:id="@+id/waterrightdisplayimg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignTop="@+id/waterleftDisplayimg"
android:layout_marginLeft="32dp"<-------------- these hardcoded values
cause problems
android:background="@drawable/ic_launcher" />
</RelativeLayout>
</LinearLayout>
我想在所有屏幕上设置相对布局
答案 0 :(得分:2)
如果要对多个屏幕进行硬编码,可以使用dimens
。
在资源的values
文件夹下,创建一个名为dimens.xml
的xml(如果不存在),如下所示:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="left_margin_value">20dp</dimen>
</resources>
为不同的屏幕分辨率创建尺寸文件,并根据这些屏幕设置所需的dp值。示例屏幕:
res/values/dimens.xml as default
res/values-sw360dp/dimens.xml
res/values-sw480dp/dimens.xml
res/values-sw600dp/dimens.xml
res/values-sw720dp/dimens.xml
res/values-xlarge/dimens.xml
创建并设置这些文件后,在布局xml文件中,更改ImageView
边距,如下所示:
android:layout_marginLeft="@dimen/left_margin_value"