Android菜单栏 - 对称图标

时间:2011-04-05 14:34:43

标签: java android

我在另一个布局中有一个相对布局,代表屏幕底部的菜单栏。没有我的魔杖四个菜单图标在菜单栏上对称分布。

这是我的代码到目前为止。问题是我不想设置绝对“下降”值。有没有办法以某种方式获得屏幕并将其分成四个?


<RelativeLayout
android:layout_height="80dip"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:background="@android:color/black"
android:layout_alignParentBottom="true" >
<ImageButton
 android:layout_alignParentBottom="true"
    android:layout_width="70dip"
    android:layout_height="70dip"
    android:id="@+id/homeButton"
    android:layout_alignParentLeft="true"
    android:src="@drawable/homeicon"/>
<ImageButton
    android:id="@+id/searchButton"
    android:layout_width="70dip"
    android:layout_toRightOf="@+id/homeButton"
    android:layout_alignParentBottom="true"
    android:layout_height="70dip"
    android:src="@drawable/searchicon"/>
<ImageButton
 android:layout_alignParentBottom="true"
    android:layout_toRightOf="@+id/searchButton"
    android:layout_width="70dip"
    android:layout_height="70dip"
    android:id="@+id/bookmarksButton"
    android:src="@drawable/bookmarksicon" />
<ImageButton
    android:id="@+id/settingsButton"
    android:layout_width="70dip"
    android:layout_toRightOf="@+id/bookmarksButton"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:layout_height="70dip"
    android:src="@drawable/settingsicon" />

2 个答案:

答案 0 :(得分:0)

从你的问题来看,很明显你不明白“沾”是什么意思。它的意思是“密度独立像素”。这使您可以非常轻松地为多个设备开发布局。因此,如果您为标准密度设备(如Droid Pro)开发布局,它将在其他设备上完美扩展。

以下是摩托罗拉的一些视频教程,可帮助您理解这一概念。

http://www.youtube.com/watch?v=ClrLNXLd5vs

http://www.youtube.com/watch?v=M5yagMoiM-s

答案 1 :(得分:0)

我想我明白了你的意思..你可以尝试使用LinearLayout作为父Viewgroup,并且每个按钮设置宽度为0dip,layout_weight为1;像这样的东西:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_above="@+id/footer" android:id="@+id/footer2"
        android:orientation="horizontal" android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:layout_alignParentBottom="true"
        android:background="#FF707070">
        <ImageButton android:layout_weight="1"
            android:layout_width="0dip" android:layout_height="70dip" android:id="@+id/homeButton"
            android:layout_alignParentLeft="true" android:src="@drawable/homeicon" />
        <ImageButton android:id="@+id/searchButton"
            android:layout_weight="1" android:layout_width="0dip"
            android:layout_height="70dip" android:src="@drawable/searchicon" />
        <ImageButton android:layout_alignParentBottom="true"
            android:layout_weight="1" android:layout_width="0dip"
            android:layout_height="70dip" android:id="@+id/bookmarksButton"
            android:src="@drawable/bookmarksicon" />
        <ImageButton android:id="@+id/settingsButton"
            android:layout_weight="1" android:layout_height="70dip"
            android:src="@drawable/settingsicon" />
</LinearLayout>

这应该有效,因为父视图组(LinearLayout)具有:

android:layout_width="fill_parent"

我希望这有效。