我想製作一個水平菜單欄,但是由於某些原因,當我使用權重時,它們沒有水平對齊,有什麼建議?使用layout_weights時圖像視圖不居中
<LinearLayout
android:id="@+id/bottombuttonslayout"
android:layout_width="match_parent"
android:layout_height="58dp"
android:layout_alignParentBottom="true"
android:weightSum="1.0" >
<LinearLayout
android:id="@+id/listSlotBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight=".20"
android:gravity="center" >
<ImageView
android:id="@+id/listSlot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="false"
android:background="@drawable/list" />
</LinearLayout>
<LinearLayout
android:id="@+id/leftArrorSlotBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight=".20" >
<ImageView
android:id="@+id/leftArrowSlot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="false"
android:background="@drawable/left_arrow" />
</LinearLayout>
<LinearLayout
android:id="@+id/playSlotBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight=".20" >
<ImageView
android:id="@+id/playSlot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="false"
android:background="@drawable/playing" />
</LinearLayout>
<LinearLayout
android:id="@+id/rightArrowSlotBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight=".20" >
<ImageView
android:id="@+id/rightArrowSlot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="false"
android:background="@drawable/right_arrow" />
</LinearLayout>
這就是它的樣子,它們是垂直對齊的。不是水平:
EDIT
這也是繼第一建議:
他們不會對齊水平,因爲Android的' :layout_gravity =「center」'只能在垂直方向上對水平方向的LinearLayout進行操作(反之亦然,對於垂直方向)。您是否嘗試在嵌套的LinearLayouts上添加'android:gravity =「center」'而不是?或者,您可以隨時將它們交換爲類似「FrameLayout」或「RelativeLayout」的東西,這樣可以更好地控制定位。 –