Android增加视图的布局重量会降低实际宽度

时间:2015-05-30 16:05:09

标签: android android-layout android-actionbar android-layout-weight

我试图追查这里出了什么问题,我什么也没做。如果我将布局权重从1更改为2,则在水平线性布局的第一个视图中,生成的宽度实际上会减小。这是代码。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    android:weightSum="7">
    <TextView android:id="@+id/filterButton"
        android:layout_width="0dp"
        android:layout_weight="2"
        android:layout_height="wrap_content"
        android:padding="0dp"
        android:textColor="@android:color/white"
        android:text="filter"></TextView>
    <RelativeLayout
        android:layout_width="0dp"
        android:layout_weight="4"
        android:layout_height="fill_parent"
        android:gravity="center" >

        <AutoCompleteTextView
            android:id="@+id/editText1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:ems="14"
            android:imeOptions="actionDone"
            android:inputType="textAutoComplete|textAutoCorrect"
            android:textColor="#FFFFFF"
            android:singleLine="true"
            android:gravity="left">
        </AutoCompleteTextView>
        <ImageView android:id="@+id/clear"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:src="@drawable/close"
            android:layout_alignParentRight="true"
            android:scaleType="fitEnd"
            android:adjustViewBounds="true"
            android:padding="12dp"
            android:visibility="invisible"
            android:tint="@android:color/white"/>
    </RelativeLayout>
    <ImageView android:id="@+id/listButton"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="fill_parent"
        android:src="@drawable/list"
        android:scaleType="fitCenter"
        android:adjustViewBounds="true"
        android:padding="9dp"
        android:tint="@android:color/white"></ImageView>
</LinearLayout>

这是我的操作栏看起来像TextView的布局权重设置为1。

enter image description here

你可以看到我已经在正确的元素上获得了一些溢出。它越来越被屏幕挡住了。这是TextView的权重设置为2时的样子。

enter image description here

这很奇怪,因为TextView实际上已经减小了。这是没有TextView的操作栏。尺寸在这里表现得很好。

enter image description here

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

它看起来类似于我有时会遇到的问题 对于权重为7的布局,它会给出类似[[。2 ..] [。5]]的空间 就像在你的例子中,减轻体重实际上给予更多的布局空间 尝试更改中间布局的背景颜色,以便更好地掌握为布局提供的空间 运气不好在我的电脑上你的代码正常工作,所以我无法帮助你。