为Android应用程序设置这样的布局的最佳方法是什么?
当rownumber为偶数或0时,该行应该有2列。 否则该行应该只有1列
必须动态生成行。 细胞也应该有一个图像和一些文本。
我应该使用什么布局:tablelayout或gridlayout?哪个观点?
答案 0 :(得分:0)
使用LinearLayout(垂直)作为父级和LinearLayout(水平作为子级),在子级中,您可以根据for循环次数添加一个或两个视图。
伪
rootLL = createLinearLayout(vertical)
for (int i=0;i<10;i++)
{
childLL = createLinearLayout(horizontal)
view1 = createView()
view1.setWeight(1)
childLL.addChild(view1)
if (i%2==0)
{
view2 = createView()
view2.setWeight(1)
childLL.addChild(view2)
}
rootLL.addChild(childLL)
}
答案 1 :(得分:0)
你只需编辑这段代码就可以实现这个理想的布局我设计的这个对你来说最好你只是把它作为一个例子你可以尝试比这更好
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:padding="5dp"
android:weightSum="2" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/black"
android:src="@drawable/ic_launcher" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/black"
android:src="@drawable/ic_launcher" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
android:src="@drawable/ic_launcher" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal"
android:padding="5dp"
android:weightSum="2" >
<ImageView
android:id="@+id/imageView4"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/black"
android:src="@drawable/ic_launcher" />
<ImageView
android:id="@+id/imageView5"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/black"
android:src="@drawable/ic_launcher" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView6"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
android:src="@drawable/ic_launcher" />
</LinearLayout>