android 九宫格

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做好了。上图瞧瞧效果


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值