我在让 LinearLayout
的两个 child 具有相同宽度时遇到了一些问题。这就是我得到的:
这是我的灰色框布局 xml:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="2"
android:background="@color/medium_grey"
>
<ImageView
android:id="@+id/profile_photo"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:src="@drawable/placeholder_profile_photo"
android:scaleType="fitCenter"
android:contentDescription="@string/blank"
android:layout_weight="1"
/>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:layout_weight="1"
android:layout_gravity="center_vertical"
android:background="@color/alert"
>
<TextView
android:id="@+id/profile_rate_header"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Rate User"
/>
<LinearLayout
android:id="@+id/profile_action_rate_user"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="1"
android:gravity="center"
>
<ImageView
android:id="@+id/profile_action_rate_up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/user_rate_up"
/>
<ImageView
android:id="@+id/profile_action_rate_down"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/user_rate_down"
/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
我假设设置根 LinearLayout
子项的 layout_weight
以及 weightSum
和 0dp< 的宽度
会产生预期的效果(图像与粉红色的“评价用户”部分大小相同),但事实并非如此。
我错过了什么?
编辑:
这是我想要的样子
照片和粉红色的线性布局应该等宽。
最佳答案
android:weightSum="2"
应该在两个子 ImageView 的父级上,而不是在上级父级上。或者尝试将权重设置为 0.5
并查看它是否有效。
此外,当使用这样的权重时,两个 ImageView 的宽度应为 android:layout_width="0dp"
。
接下来,放大图像以填充空间。详情 here .
关于android - 具有两个等宽子项的 LinearLayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17531033/