我想制作一个漂亮的主菜单页面,如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>
答案 0 :(得分:0)
我相信您正在寻找GridView。 GridView是一个ViewGroup,它以二维可滚动网格显示项目。当内容增长时,它自己处理滚动。此外,您还将获得其他功能,例如内存处理,使用适配器模式的内置MVC等。
简单的GridView如下所示;
<GridView
android:id="@+id/gridView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:columnWidth="100dp"
android:drawSelectorOnTop="true"
android:gravity="center"
android:numColumns="auto_fit"
android:stretchMode="columnWidth"
android:verticalSpacing="5dp"
android:focusable="true"
android:clickable="true"/>
您可以从以下链接中查看一些完整的GridView实现。