0

我有一个线性布局,其中有 4 个不同权重的孩子。当用户单击第一个孩子的按钮时,我想将新的孩子添加到具有不同权重(0dp 高度)的父线性布局。但是当我添加新孩子时,所有孩子的身高都在变化。如何在不改变身高百分比的情况下添加新视图?

    ------
    view 1 (25%)
    ------  
    ------
    view 2 (25%)
    ------  
    ------
    view 3 (25%)
    ------  
    ------
    view 4 (25%)
    ------  

以编程方式添加新布局后

     ------
    view 1 (25%)
    ------  
    ------
    view 2 (25%)
    ------  
    ------
    view  3 (25%)
    ------  
    ------
    view 4 (25%)
    ------   
    ------
    view 5 (25%)
    ------    

总布局为 125% 且可滚动。谢谢

4

2 回答 2

1

当您使用权重时,您的视图的大小是动态确定的,以确保它们所有的视图都适合父级的大小 - 比例由权重决定。

根据您的描述,LinearLayout 听起来不像您的问题的正确解决方案。ListView 可能是更好的方法,当所有项目的总大小超过 ListView 本身的大小时,它将自动提供滚动功能。ListView 易于实现,它可以自动为您提供项目之间的滚动和分隔符。查看ListView 开发人员指南了解更多信息。

于 2013-05-13T09:41:58.343 回答
0

是的,您可以使用自定义样式列表视图进行自动滚动并获得预期的外观和感觉。你可以这样使用:

<ListView
                android:id="@+id/"
                android:layout_width="200dp"
                android:layout_height="wrap_content" 
                android:divider="@color/off_white"
                android:dividerHeight="2dp"/>
于 2013-05-13T11:48:30.797 回答