Android-GridView (Simpleadapter)

1.回顾

   上篇 是 ListView 和 SimpleAdapter,ArrayAdapter ,BaseAdapter 的学习,并通过 Item点击事件和 Scroll 滑动 事件,进行了学习。

     后又学习了 DatePicker 和 TimePicker ,和日期类 Calendar;

2.重点

   (1) GridView 重要属性

    (2)SimpleAdapter 的实现

    (3)OnItemClickListener 事件

3.GridView重要属性

   每一行显示多少列:  android:numColumns="auto_fit" auto_fit:表示自适应 ,3 表示 3列
   两列之间的间距:     android:horizontalSpacing="10dp"
   两行之间的距离:      android:verticalSpacing="10dp"

例子:

   <GridView
        android:id="@+id/gridView1"
        android:numColumns="4"
        android:horizontalSpacing="10dp"
        android:verticalSpacing="10dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true" >

    </GridView>

4. 一个例子

    4.1 效果图

                                                     

    4.2 实现步骤

       (1)初始化GridView

                findViewById 操作

       (2)初始化SimpleAdapter 及 其 布局 ,这个和 上篇listview 中使用的一样,可以看上篇;

                ListView详解

           在这里,依然使用 :

	List<Map<String,Object>>	maps=new ArrayList<Map<String,Object>>();
		for(int i=0;i<21;i++){
			Map<String, Object> map=new HashMap<String, Object>();
			map.put("image",R.drawable.ic_launcher);
			map.put("name","yuan"+i);
			maps.add(map);
		}
		
		SimpleAdapter simpleAdapter=new SimpleAdapter(this,maps,R.layout.list_main,new String[]{"image","name"},new int[]{R.id.imageView1,R.id.textView2});
		gridView1.setAdapter(simpleAdapter);
	

       (3)这里的SimpleAdapter 就不解释了,需要的看 ListView 详解
http://blog.csdn.net/lablenet/article/details/47905451        


5.OnItemClickListener 事件

   通过position 获取值

/*
	 * GridView Item 点击
	 */
	class gridOnItemOnClick implements OnItemClickListener{

		@Override
		public void onItemClick(AdapterView<?> parent, View view, int position,
				long id) {
			// GridView Item 点击
			//String item= (String) gridView1.getItemAtPosition(position);
			Toast.makeText(getApplicationContext(),maps.get(position).toString(), Toast.LENGTH_SHORT).show();
		}
	}

6. 总结

    这里是通过 SimpleAdapter 实现的 ,也可以通过 BaseAdapter 实现;



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值