顯示九宮格需要用GridView , 要顯示每個格子中的視圖有兩種方式,第一種方式是做成xml文件,再將xml文件做成視圖。第二種方式就是在代碼中構建出這樣一種布局,這裡采用第一種方式來實現:
效果:
GridView:
- <?xml version="1.0" encoding="utf-8"?>
- <RelativeLayout xmlns:Android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <!-- id gv_all
- 寬高都是填充父窗體
- numcolums 為3
- 水平控件的距離 10px
- 垂直距離是10px
- gridview 離底部58px
- 離頂部28px
- 離左邊5px
- 離右邊5px
- -->
- <GridView
- android:id="@+id/gv_all"
- android:layout_height="fill_parent"
- android:layout_width="fill_parent"
- android:numColumns="3"
- android:horizontalSpacing="10px"
- android:verticalSpacing="10px"
- android:layout_marginBottom="58px"
- android:layout_marginTop="28px"
- android:layout_marginLeft="5px"
- android:layout_marginRight="5px"
- ></GridView>
-
- </RelativeLayout>
視圖:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="90px"
- android:layout_height="90px">
- <ImageView
- android:layout_width="64px"
- android:layout_height="64px"
- android:layout_gravity="center_horizontal"
- android:id="@+id/main_gv_iv"
- />
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="center_horizontal"
- android:textSize="16px"
- android:textColor="#FFF"
- android:id="@+id/main_gv_tv"
- />
- </LinearLayout>