有线性布局的问题。我认为有些东西很奇怪。所有这些布局相同,但后退按钮移动相关图标按钮。我想在左侧放回按钮,btn_header_what_search_user按钮想要正确的站点。但是他们正在移动相关图标(中心图标)。为什么?以及如何在左侧按回按钮。
我的代码:`
<LinearLayout android:layout_height="44dip"
android:layout_width="320dip"
android:background="@drawable/header_320_44dip">
<ImageView
android:layout_width="121dip"
android:layout_height="32dip"
android:layout_gravity="center"
android:layout_marginLeft="90dip"
android:background="@drawable/icon">
</ImageView>
<ImageView
android:layout_width="52dip"
android:layout_height="32dip"
android:layout_gravity="left"
android:background="@drawable/btn_back_52x32">
</ImageView>
<ImageButton
android:layout_height="34dip"
android:layout_width="64dip"
android:id="@+id/btn_header_what_search_user"
android:layout_marginLeft="0dip"
android:background="@drawable/btn_nedit_nontext_64x34">
</ImageButton>
</LinearLayout>
`
答案 0 :(得分:3)
您应该使用相对布局
<RelativeLayout android:layout_height="44dip"
android:layout_width="320dip"
android:background="@drawable/header_320_44dip">
<ImageView
android:layout_width="121dip"
android:layout_height="32dip"
android:layout_centerInParent="true"
android:layout_marginLeft="90dip"
android:background="@drawable/icon">
</ImageView>
<ImageView
android:layout_width="52dip"
android:layout_height="32dip"
android:layout_alignParentLeft="true"
android:background="@drawable/btn_back_52x32">
</ImageView>
<ImageButton
android:layout_height="34dip"
android:layout_width="64dip"
android:id="@+id/btn_header_what_search_user"
android:layout_marginLeft="0dip"
android:layout_alignParentright="true"
android:background="@drawable/btn_nedit_nontext_64x34">
</ImageButton>
</RelativeLayout>
答案 1 :(得分:2)
LinearLayout
不能很好地处理沿主方向的重力(即水平LinearLayout不支持left,right或center_horizontal,以及垂直顶部,底部或center_vertical)。
您可以尝试RelativeLayout
并使用layout_alignParentLeft
/ layout_alignParentRight
属性(或任何其他可用的属性)来获得正确的结果。
答案 2 :(得分:0)
另一种解决方案可能是使用布局权重。将总重量设置为3,然后为每个图像视图设置1的权重。这样,布局分为3个部分,您应该能够调整每个部分的重力。这样的事情:
<LinearLayout
...
android:weightSum="3" >
<ImageView
...
android:layout_width="0dp"
android:layout_weight="1" />