如何根据尺寸放置物品?

时间:2015-07-21 09:03:29

标签: android android-xml

目前,我正在开发一个Android应用程序。在我的活动中,我想根据它们的大小放置我的元素。我解释说:我在GridLayout中有3个LinearLayout,如下所示:

enter image description here

GridLayout(2,2,水平)允许像这样放置LinearLayouts:

enter image description here

我想做同样的事情,但没有GridLayout( 2 2 ,水平),但只是根据元素的大小。

例如,如果屏幕较大,则可以在同一条线上使用3个LinearLayout,如果屏幕较小则可以相反,按线路连接1个LinearLayout。

我希望我已经清楚了,先谢谢。

3 个答案:

答案 0 :(得分:2)

此布局将是标准中不存在的“FlowLayout”。

但是它有一些开源实现:

你应该看看

https://github.com/ApmeM/android-flowlayout

https://github.com/blazsolar/FlowLayout

答案 1 :(得分:0)

是的,当然可以。

您需要为不同密度的设备创建不同的布局目录。

例如 layout-ldpi layout-hdpi 等,并在其中定义所需的布局类型。

res/layout/my_layout.xml             // layout for normal screen size ("default")
res/layout-small/my_layout.xml       // layout for small screen size
res/layout-large/my_layout.xml       // layout for large screen size
res/layout-xlarge/my_layout.xml      // layout for extra large screen size
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation

在不同的my_layout.xml文件中定义您需要的一个,两个或三个线性布局。

答案 2 :(得分:0)