Android layout_weight问题

时间:2011-04-29 12:57:26

标签: android layout

enter image description here朋友,

我写了以下布局代码和按钮,以便在屏幕上同等显示,但它似乎没有任何指导我在做什么错误?

![<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent"
>

    <LinearLayout 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:background="@color/color_panel_background"
    >

        <ImageButton 
        android:layout_height="wrap_content" 
        android:id="@+id/currentLocation" 
        android:layout_weight="1"
        android:layout_width="fill_parent"
        android:src="@drawable/current_location_icon"
         />

        <ImageButton 
        android:layout_height="wrap_content" 
        android:id="@+id/searchCity" 
        android:layout_weight="1"
        android:layout_width="fill_parent"
        android:src="@drawable/search_icon"
         />

        <ImageButton 
        android:layout_height="wrap_content" 
        android:id="@+id/home" 
        android:layout_weight="1"
        android:layout_width="fill_parent" 
         android:src="@drawable/home_icon"
        />

    </LinearLayout>

</RelativeLayout>][2]

4 个答案:

答案 0 :(得分:0)

如果您希望它们具有相同的高度,请将android:layout_height"wrap_content"更改为某个常量。

答案 1 :(得分:0)

中间按钮的drawable明显比其他两个大。您可以使用wrap_content设置按钮的高度,因此中间按钮会变大。体重与此无关。它仅定义了使用fill_parent时项目占用的空间。 最简单的解决方法是将layout_height更改为固定值(使用dp作为单位) 或改变您的drawable的大小,使图像开始时的大小相同。

对你问这个问题的方式竖起大拇指。截图和相关代码。希望每个人都这样做:)

答案 2 :(得分:0)

将线性布局高度更改为某个常量和 将线性布局中的对象layout_height更改为fill_parent

答案 3 :(得分:0)

水平中的

:如果为子视图设置权​​重,则设置为= 0dp 在垂直方式:如果为子视图设置权​​重,则设置height = 0dp