第一步,布局文件

  1. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2. xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
  3. android:layout_height="match_parent"
  4. tools:context=".JokeTabHostActivity"
  5. android:orientation="vertical"
  6. >
  7.  
  8. <GridView
  9. android:id="@+id/GridView"
  10. android:listSelector="@android:color/transparent"
  11. android:layout_width="fill_parent"
  12. android:layout_height="fill_parent"
  13. android:columnWidth="90dp"
  14. android:gravity="center"
  15. android:numColumns="auto_fit"
  16. android:layout_marginTop="10dp"
  17. android:stretchMode="columnWidth">
  18. </GridView>
  19.  
  20. </LinearLayout>

第二步,在你的activity  中调用初始化Grid

  1. GridView gridview = (GridView) findViewById(R.id.GridView);
  2. ArrayList<HashMap<String, Object>> meumList = new ArrayList<HashMap<String, Object>>();
  3. for (int i = 1; i < 4; i++) {
  4. HashMap<String, Object> map = new HashMap<String, Object>();
  5. if (i == 1) {
  6. map.put("ItemImage", R.drawable.a1);
  7. map.put("ItemText", "文章精选");
  8. } else if (i == 2) {
  9. map.put("ItemImage", R.drawable.a2);
  10. map.put("ItemText", "幽默笑话");
  11. } else {
  12. map.put("ItemImage", R.drawable.a5);
  13. map.put("ItemText", "期待很多其它");
  14. }
  15.  
  16. meumList.add(map);
  17. }
  18.  
  19. SimpleAdapter saItem = new SimpleAdapter(this, meumList, // 数据源
  20. R.layout.item, // xml实现
  21. new String[] { "ItemImage", "ItemText" }, // 相应map的Key
  22. new int[] { R.id.ItemImage, R.id.ItemText }); // 相应R的Id
  23. // //加入Item到网格中
  24. gridview.setAdapter(saItem); // 加入点击事件
  25. gridview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
  26. @SuppressWarnings("static-access")
  27. public void onItemClick(AdapterView<?
  28.  
  29. > arg0, View arg1, int arg2,
  30. long arg3) {
  31. int index = arg2 + 1;// id是从0開始的,所以须要+1
  32. if (index == 1) {
  33.  
  34. Intent intent = new Intent();
  35. intent.setClass(MainActivity.this,
  36. CloseTabHostActivity.class);
  37. startActivity(intent);
  38.  
  39. }
  40. if (index == 2) {
  41. Intent intent = new Intent();
  42. intent.setClass(MainActivity.this,
  43. XListViewActivity.class);
  44. startActivity(intent);
  45. //showInfo("正在努力码代码中。。。
  46.  
  47. ");
  48. // finish();//停止当前的Activity,假设不写,则按返回键会跳转回原来的Activity
  49. }
  50. if (index == 3) {
  51. showInfo("期待你的建议,好建议请Q 649175826");
  52. }
  53. }
  54. });

版权声明:本文博主原创文章,博客,未经同意不得转载。

【Android】九宫格实现的更多相关文章

  1. Android九宫格界面实现点击每个格点击跳转界面

    刚开始有个任务就是做一个九宫格界面,后来有个任务就是实现点击每个格并跳转界面实现每个格的功能.下面我就介绍一下我是如何实现该功能的 首先写一下我的想法是: 登录成功后显示一个九宫格界面,每个九宫格的每 ...

  2. Android九宫格图片(9.png)的讲解与制作

    刚开始学习Android的时候,会见到res/drawable的几个文件里面有*.9.png格式命名的图片文件.起初以为这只是Android素材的一些特殊命名,其实不是.它是能实现图片素材拉伸.收缩不 ...

  3. Android 九宫格密码锁进入程序

    设置九宫格密码锁进入程序,设置,重置,取消等,安卓巴士地址http://www.apkbus.com/forum.php?mod=viewthread&tid=182620&extra ...

  4. IOS仿Android九宫格解锁效果[转]

    原理很简单,监听view中touch的一系列事件,当判定手指位置在某个按钮附近的时候则判断此按钮选中,并画出线. 效果图如下: 你可以在NineGridUnlockView.m文件中方法 touche ...

  5. android 九宫格(16宫格)控件

    public class NineRectView extends ViewGroup { private Context ctx; private int wSize,hSize,row,colum ...

  6. Android九宫格解锁有多少种姿势

    参考知乎:知乎.

  7. Android开源项目库汇总

    最近做了一个Android开源项目库汇总,里面集合了OpenDigg 上的优质的Android开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitHub上给个star. 抽 ...

  8. GitHub上受欢迎的Android UI Library

    GitHub上受欢迎的Android UI Library 内容 抽屉菜单 ListView WebView SwitchButton 按钮 点赞按钮 进度条 TabLayout 图标 下拉刷新 Vi ...

  9. Android UI相关开源项目库汇总

    最近做了一个Android UI相关开源项目库汇总,里面集合了OpenDigg 上的优质的Android开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitHub上给个st ...

  10. GitHub 上受欢迎的 Android UI Library 整理二

    通知 https://github.com/Tapadoo/Alerter ★2528 - 克服Toast和Snackbar的限制https://github.com/wenmingvs/Notify ...

随机推荐

  1. mediator pattern

    20.4 中介者模式总结 中介者模式将一个网状的系统结构变成一个以中介者对象为中心的星形结构,在这个星型结构中,使用中介者对象与其他对象的一对多关系来取代原有对象之间的多对多关系.中介者模式在事件驱动 ...

  2. rsync+inotify实现server实时备份

    inotify实现对文件夹下文件进行监听的原理: inotify集成到内核中,通过内核提供的接口.使用inotify作为第三方的软件对文件夹变化进行监控. inotifywait命令能够对文件夹中的文 ...

  3. C++primer读书笔记9-转换和类类型

    有时指定自己的类类型来表示某些类型的数据,如SmallInt,然后在为了便于计算将指定一个转换算,类类型,在某些情况下,自己主动转换为指定的类型 <1>转换操作符 operator typ ...

  4. [Eclipse]代码已被写入关于如何切换到unix在新行

    切换换行符的显示格式, 一般的设置是这种: 可是这样仅仅能对新文件起作用,原来已经写好的还是那熊样.(怎么办呢,得吃懊悔药啊,谁让你開始没准备好呢?!T_T) 以下就是懊悔药: 这样就OK了. 附:有 ...

  5. 基于lua的网页脚本开发语言cgilua(转)

    这里为大家介绍基于lua脚本实现的网页开发语言,cgilua 介绍 cgilua使用Lua是一个用于创建动态网页的服务器端脚本语言.纯LUA脚本和LUA页(LP)的支持,cgilua.Lua脚本是一个 ...

  6. poj 3311Hie with the Pie

    题意:一个送披萨的,每次送外卖不超过10个地方,给你这些地方之间的时间,求送完外卖回到店里的总时间最小. 解法一: 这个n不大,即使是NP问题也才1E6多一些所以可以dfs():具体的回溯方法结合da ...

  7. 认识mongoDB数据库

    mongodb中有三元素:数据库,集合,文档,其中“集合”对应关系型数据库中的“表”,“文档”对应“行”. 安装mongoDB: 去官网下载对应系统的mongoDB压缩包,解压后将文件夹重命名为mon ...

  8. PowerCmd(转)

    PowerCmd 是一款Windows CMD 的增强工具,可以比普通CMD工具提供更多选项,例如: 1.多窗口集成,再也不见满屏的Cmd窗口: 2.命令日志记录,再也不怕命令滚动多快,有多少,我们都 ...

  9. 深入理解JavaScript系列(33):设计模式之策略模式(转)

    介绍 策略模式定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化不会影响到使用算法的客户. 正文 在理解策略模式之前,我们先来一个例子,一般情况下,如果我们要做数据合法性验证,很 ...

  10. 最小二乘法拟合非线性函数及其Matlab/Excel 实现(转)

    1.最小二乘原理 Matlab直接实现最小二乘法的示例: close x = 1:1:100; a = -1.5; b = -10; y = a*log(x)+b; yrand = y + 0.5*r ...