LinearLayout minHeight 不适用于 weight="1"
Posted
技术标签:
【中文标题】LinearLayout minHeight 不适用于 weight="1"【英文标题】:LinearLayout minHeight not working with weigth="1" 【发布时间】:2012-09-27 15:25:12 【问题描述】:我整个下午都在尝试让minHeight
属性起作用。
我想要的是 linearMe
布局:
随着 ListView 变大,我希望 linearMe
布局:
我的问题是 linearMe
布局越来越小,因为 ListView 中有更多元素。当 listView 有足够的元素填满屏幕时,linearMe
布局就消失了。在这种情况下,minHeight
似乎没有用。
<LinearLayout
android:layout_
android:orientation="vertical"
android:layout_ >
<ListView
android:id="@+id/list"
android:layout_
android:layout_ />
<LinearLayout
android:id="@+id/linearMe"
android:layout_
android:layout_
android:layout_weight="1"
android:background="#FF0000"
android:minHeight="200dp" />
</LinearLayout>
希望你能帮帮我! :)
【问题讨论】:
你解决过这个问题吗? 我已经解决了同样的问题,请看我的回答:- http://***.com/questions/42832856/minheight-not-working-with-weight-1-in-linearlayout/43199823#43199823 【参考方案1】:也将android:layout_weight="1"
添加到 ListView。
将它们都更改(列表和线性我)android:layout_height
属性为"match_parent"
删除`minHeight。
这样每个视图将占据屏幕的一半。`
【讨论】:
这不是我想要的……我想利用所有可用空间,例如 ListView 中只有一项。 那么为什么不将 maxHieght 设置为 ListView 呢?无论如何最好通过代码而不是 xml 动态地做这样的事情 你确定 maxHeight 存在吗?我不这么认为。 developer.android.com/reference/android/widget/ListView.html【参考方案2】:您可能想尝试使用“View”而不是“LinearLayout”来进行间隔布局。 ViewGroup 类有时处理布局略有不同。
【讨论】:
那我该如何添加内容呢? 保持 LinearLayout 作为你的根布局,但是使用 View 作为间隔视图。 (给定上面的示例代码)。 假设我想在linearMe
布局中放一张图片。你的解决方案怎么可能?
不是。鉴于您的示例代码,看起来您只是想在屏幕底部设置背景颜色。
好的,抱歉。我会澄清我的问题。 :)以上是关于LinearLayout minHeight 不适用于 weight="1"的主要内容,如果未能解决你的问题,请参考以下文章
在 CollapsingToolbarLayout 中设置 minHeight 没有任何效果
将 minHeight 与 flex 一起使用会产生意外的填充
Android ImageView - 当adjustViewBounds=true时minWidth/minHeight没有效果