我想制作一个漂亮的主菜单页面,如Android设备的主页,其中按钮图像按行排列;页面中的每一行说包含4个imageButtons .
我使用了下面的布局,但每行中的imageViews大小不均匀 . 我有这些问题:
-
我希望连续使用3个imageView . 如何检测屏幕的宽度和高度是什么,所以将它除以3 imageView?说,基于星系音符 .
-
如何在3个imageViews之间做间距?在每个ImageView下面都有一个textView来指示ImageView的名称或功能 .
-
我应该允许旋转吗?如果旋转,如何在旋转到水平时启用滚动?
谢谢
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/myLinearLayout"
android:minWidth="25px"
android:minHeight="25px">
<LinearLayout
android:orientation="horizontal"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/poiImageView"
android:id="@+id/linearLayout1"
android:layout_centerVertical="true">
<ImageView
android:id="@+id/Thumbnail1"
android:layout_width="70dp"
android:layout_height="70dp"
android:paddingLeft="10dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:src="@drawable/Icon" />
<ImageView
android:id="@+id/Thumbnail1a"
android:layout_width="70dp"
android:layout_height="70dp"
android:paddingLeft="10dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:src="@drawable/Icon" />
<ImageView
android:id="@+id/Thumbnail1b"
android:layout_width="70dp"
android:layout_height="70dp"
android:paddingLeft="10dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:src="@drawable/Icon" />
</LinearLayout>
<LinearLayout>
2nd row
</LinearLayout>
<LinearLayout>
3rd row
</LinearLayout>
</LinearLayout>
1 回答
我相信你正在寻找GridView . GridView是一个ViewGroup,它以二维可滚动网格显示项目 . 当内容增长时,它自己处理滚动 . 此外,您将获得其他功能,如内存处理,使用适配器模式的内置MVC等 .
一个简单的GridView如下所示;
您可以从以下链接中检出一些完整的GridView实现 .
Android GridView Example- Building Image Gallery in android
Download and Display Image in Android GridView