1:main.xml 里定义一个gridview。
<GridView
android:id="@+id/GridView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:numColumns="3"
android:horizontalSpacing="10dip"
android:verticalSpacing="30dip"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center">
</GridView>
2:新建一个 gridview.xml ,用于定义九宫格的图片和文字显示
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
>
<ImageView
android:id="@+id/froad_main_gridview_imageview"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_gravity="center_horizontal"
/>
<TextView
android:id="@+id/froad_main_gridview_textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:textSize="18sp"
android:lines="1"
android:layout_margin="8dp"
/>
</LinearLayout>
3:展示九宫格主要代码
GridView gridview = (GridView)findViewById(R.id.GridView);
ArrayList<HashMap<String,Object>> imageItem = new ArrayList<HashMap<String, Object>>();
for(int i=0;i<2;i++){
HashMap<String,Object> map = new HashMap<String, Object>();
if(i == 0){
map.put("itemImage",R.drawable.icon);
map.put("itemText", getResources().getString(R.string.gridview0));
}
if(i == 1){
map.put("itemImage", R.drawable.icon);
map.put("itemText", getResources().getString(R.string.gridview1));
}
imageItem.add(map);
}
SimpleAdapter simpleAdapter = new SimpleAdapter(this,
imageItem,
R.layout.road_gridview,
new String[]{"itemImage","itemText"},
new int[]{R.id.froad_main_gridview_imageview,R.id.froad_main_gridview_textview});
gridview.setAdapter(simpleAdapter);
gridview.setOnItemClickListener(new ItemClickListener());
class ItemClickListener implements OnItemClickListener{
@Override
public void onItemClick(AdapterView<?> arg0 /*The AdapterView where the click happened*/
, View arg1 /*The view within the AdapterView that was clicked*/
, int arg2, /*The position of the view in the adapter*/
long arg3) { /*The row id of the item that was clicked*/
// TODO Auto-generated method stub
HashMap<String, Object> item = (HashMap<String, Object>)arg0.getItemAtPosition(arg2);
if(item.get("itemText").equals(getResources().getString(R.string.gridview0))){
Toast.makeText(ZunyiDemoActivity.this, R.string.gridview0, Toast.LENGTH_SHORT).show();
}
if(item.get("itemText").equals(getResources().getString(R.string.gridview1))){
Toast.makeText(ZunyiDemoActivity.this, R.string.gridview1, Toast.LENGTH_SHORT).show();
}
}
另外在资源文件String.xml中定义一些小东东就好啦。
<string name="gridview0">游戏点卡</string>
<string name="gridview1">机票订购</string>
OK!小demo做好了。上图瞧瞧效果
