GridView学习记录
来源:互联网 发布:金蝶软件培训教程 编辑:程序博客网 时间:2024/06/05 14:39
Android的GridView控件用于把一系列的空间组织成一个二维的网格显示出来。
public class TestGridViewActivity extends Activity{ /** Called when the activity is first created. */ GridView view; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); view = (GridView) findViewById(R.id.list); view.setAdapter(new MyAdapter(TestGridViewActivity.this)); view.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View view, int position, long id) { // TODO Auto-generated method stub Intent intent = new Intent(); intent.putExtra("id", id); intent.setClass(TestGridViewActivity.this, MyActivity.class); startActivity(intent); } }); }}
这个是主activity的内容,在这个Activity的main.xml中需要声明一个GridView
<GridView android:id="@+id/list" android:layout_width="match_parent" android:layout_height="wrap_content" android:numColumns="4" > </GridView>
在这个GridView中,是通过使用继承自BaseAdapter的容器来存放数据的,就需要一个MyAdapter
class MyAdapter extends BaseAdapter {Context context;public MyAdapter(Context context) {this.context = context;}private int[] bitmap = { R.drawable.b1, R.drawable.b2, R.drawable.b3,R.drawable.b4, R.drawable.b5, R.drawable.b6, R.drawable.b7,R.drawable.b8 };@Overridepublic int getCount() {// TODO Auto-generated method stubreturn bitmap.length;}@Overridepublic Object getItem(int position) {// TODO Auto-generated method stubreturn position;}@Overridepublic long getItemId(int position) {// TODO Auto-generated method stubreturn position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {// TODO Auto-generated method stubImageView i;if (convertView == null) {i = new ImageView(context);i.setScaleType(ImageView.ScaleType.FIT_CENTER);i.setLayoutParams(new GridView.LayoutParams(120, 120));} else {i = (ImageView) convertView;}i.setImageResource(bitmap[position]);return i;}}
在后面,我们为每一个view的字对象创建一个点击的监听器,每当点击的时候,跳到一个心得Activity中,通过Intent传递数据,把id传过去,在第二个Acitivity中接收数据,根据不同的id来显示不同的内容
@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.main1);Intent intent = getIntent();int a = (int) intent.getLongExtra("id", 0);image = (ImageView) findViewById(R.id.image);image.setImageResource(bitmap[a]);}
*******需要主意的一点,同时我自己也忘记的一点,在这说一下(该打啊)就是在写第二个Activity的时候,一定不要忘记在AndroidManifest中去声明。
好了,完成了,就这么简单,你们完全可以把我的这个代码拷到自己的本地去运行,但是这样起不到学习的作用,必须在看的基础上去记,哪怕是死记下,用的时候去回想,没效果的时候,想想为什么没有起作用,是不是哪儿错了,看着自己的代码 ,好好想,实在想不到了,再去看看别人的例子,这样才会学的会,记得牢(其实我自己现在都不一定能够做到这样,这要有很强的耐性和理解能力,但是我想信,我可以通过努力,可以达到这种效果,然后以后呢,在用的时候可以手到擒来)。
小弟我刚开始写博客,把自己的学习都记录下来,当然了,很多地方都不完善,可能有些还是错误的理解,我希望高手(三人行必有我师,我相信来看的都是高手)给我留下更多的宝贵的意见和建议,就算是随便谢谢你们学习android的心得,一句我就很开心了,小弟在此感谢了。
我的排版真心很乱,o(︶︿︶)o 唉,希望有好的意见的多多提出来。
各位,快12点了,都睡觉吧,明天周六,大大们好好睡个懒觉,一个礼拜的忙碌生活明早要补回来,当然不要忘记了学习哦。
温故而知新…………
- GridView学习记录
- devDevexpress.XtraGrid.GridControl.GridView 学习记录
- 初学Asp.net关于GridView的一些学习记录
- 记录gridview中的记录行数
- GridView使用一些记录
- GridView添加新记录
- GridView删除记录错误
- GridView上下移动记录
- GridView的属性记录
- GridView属性记录
- GridView学习
- 学习gridview
- GridView 学习
- GridView学习
- gridview学习
- GridView学习
- GridView--学习
- GridView学习
- 2012学习总结
- codechef December Challenge 2012 Pizza Delivery 完全背包求最小值 这道很重
- 余和Java、.Net 的纠结恋
- linux中Find、whereis、locate、which查找文件命令总结
- 使用 Socket 通信实现 FTP 客户端程序
- GridView学习记录
- IntPrioritySet lm3s
- 操作系统学习笔记六:进程同步
- hash学习笔记
- JDBC基础教程-01
- Box2d源码学习<三> 内存管理之栈的实现
- 壳的世界(一)
- vector构造函数
- OpenGL入门学习