layout_weight更改图像的尺寸
问题描述:
基本上我有ImageView中的一种线性布局,当在我的每个布局上设置重量时,其大小会与布局中的ImageView一样。问题是 - 只有实际改变宽度的高度保持不变。layout_weight更改图像的尺寸
为什么这是一个问题?我有customView,我需要把它放在杯子上,所以它需要杯子的x,y坐标,它的大小(宽度和高度)。现在我得到不同的屏幕尺寸的宽度。
布局代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="3"
android:orientation="horizontal" >
<RelativeLayout
android:id="@+id/rlmainContainer"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/ivCup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/cup1_r" />
</RelativeLayout>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
</LinearLayout>
</LinearLayout>
Archie.bpgc溶液(设定layout_height = “0dp”)没有帮助。设置一些更多的图像和他们都是用不成比例的宽度:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:orientation="horizontal" >
<ImageView
android:id="@+id/ivCup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/cup1_r" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1" >
<ImageView
android:id="@+id/ivCup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/cup1_r" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1" >
<ImageView
android:id="@+id/ivCup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/cup1_r" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1" >
<ImageView
android:id="@+id/ivCup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/cup1_r" />
</LinearLayout>
</LinearLayout>
答
让您layout_height = 0dp
而设置的权重。它也是一个优化。
android:layout_height="0dp"
两个LinearLayouts。
,你也并不需要RelativeLayout
,因为你只能有一个ImageView
在第一LinearLayout
没有帮助,感谢快速反应。 – user2060190 2013-02-11 05:30:00
@ user2060190看起来像我误解了这个问题。你希望你的'ImageViews'具有**等于**的高度**(我可以从你的代码中得出结论)。如果你想让所有图像的宽度都相同,请移除'wrap_content'并设置一些值或'fill_parent'。 – 2013-02-11 05:43:09