android:在彼此之后布置项目

时间:2014-08-26 18:37:17

标签: android android-layout android-linearlayout

我通过代码生成一些按钮:

LinearLayout layout = (LinearLayout) findViewById(R.id.layoutResult);
for (int i = 0; i < n; i++) {
    Button btn = new Button(MainActivity.this);
    btn.setText("Item " + i);
    btn.setId(i);
    layout.addView(btn);
}

布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:id="@+id/layoutResult"
    android:orientation="horizontal">   
</LinearLayout>

生成按钮并将它们放在屏幕上,如下所示:

enter image description here

但我的目标是以这种方式布置元素:

enter image description here

如何以编程方式使用LinearLayout实现这一目标?有什么想法吗?

1 个答案:

答案 0 :(得分:1)

你看过这个吗?的FlowLayout

http://nishantvnair.wordpress.com/2010/09/28/flowlayout-in-android/

另一种方法是在代码中自己动手,获取屏幕宽度,然后你就可以计算出屏幕上可以容纳的项目数量,并在需要添加它们之前计算一行中可以容纳多少项目到下一行。