我将Android控件的网格控件的学习知识总结一下和大家共享包括(GridView)

在Android开发中,罗列信息或者整理信息就是需要用到网格控件,Android源生提供了GridView控件。

1、GridView控件

GridView控件用于显示一个网格,实际上,和LIstView这一类的控件使用方法相似,只是在显示上的不同。

gridView的属性可以参考http://wenku.baidu.com/link?url=QzEL1ZQHXy3shjf1xjnQPFYLNw53Ed3phyBYpvk90fRcXPVq1Tmo97d_JNs2TqWuDFmO3Td_Dh7s-MYfxji6uXUsEYoQW39gR5PT1DKrGvq

或者http://blog.sina.com.cn/s/blog_604ea4410100wren.html

这边比较懒,没有整理罗列。

在这里GridView采用了二维表的方式显示,就需要设置行和列。设置列采用<GridView>的columnWidth属性。但是并不需要设置行数。

Adapter和ListView一样

下面直接看例子:

main.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_horizontal"><GridView android:id="@+id/gridview" android:layout_width="fill_parent"android:layout_height="wrap_content" android:numColumns="4"android:padding="20dp" android:horizontalSpacing="6dp"android:verticalSpacing="6dp"  /> <ImageView android:id="@+id/imageview" android:layout_width="fill_parent"android:layout_height="150dp" />
</LinearLayout>

cell.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"><ImageView android:id="@+id/imageview" android:layout_width="48dp"android:layout_height="48dp"  />
</LinearLayout>

java代码实现:

public class Main extends Activity implements OnItemSelectedListener,OnItemClickListener
{private ImageView imageView;private int[] resIds = new int[]{ R.drawable.item1, R.drawable.item2, R.drawable.item3, R.drawable.item4,R.drawable.item5, R.drawable.item6, R.drawable.item7,R.drawable.item8, R.drawable.item9, R.drawable.item10,R.drawable.item11, R.drawable.item12, R.drawable.item13,R.drawable.item14, R.drawable.item15, R.drawable.item16 };@Overridepublic void onItemSelected(AdapterView<?> parent, View view, int position,long id){imageView.setImageResource(resIds[position]);}@Overridepublic void onNothingSelected(AdapterView<?> parent){// TODO Auto-generated method stub}@Overridepublic void onItemClick(AdapterView<?> parent, View view, int position,long id){imageView.setImageResource(resIds[position]);}@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);GridView gridView = (GridView) findViewById(R.id.gridview);List<Map<String, Object>> cells = new ArrayList<Map<String, Object>>();for (int i = 0; i < resIds.length; i++){Map<String, Object> cell = new HashMap<String, Object>();cell.put("imageview", resIds[i]);cells.add(cell);}SimpleAdapter simpleAdapter = new SimpleAdapter(this, cells,R.layout.cell, new String[]{ "imageview" }, new int[]{ R.id.imageview });gridView.setAdapter(simpleAdapter);imageView = (ImageView) findViewById(R.id.imageview);gridView.setOnItemSelectedListener(this);gridView.setOnItemClickListener(this);imageView.setImageResource(resIds[0]);}
}

 

Android控件详解之网格控件相关推荐

  1. android自定义组件属性,Android组合控件详解 自定义属性

    组合控件详解 & 自定义属性 组合控件是自定义控件的一种,只不过它是由其他几个原生控件组合而成,故名组合控件. 在实际项目中,GUI 会遇到一些可以提取出来做成自定义控件情况. 一个自定义控件 ...

  2. android什么控件能够输入多行文字,Android开发:文本控件详解——EditText(一)基本属性...

    一.简单实例: EditText输入的文字样式部分的属性,基本都是和TextView中的属性一样. 除此之外,EditText还有自己独有的属性. 二.基本属性: hint 输入框显示的提示文本 te ...

  3. Switch控件详解

    Switch控件详解 原生效果 5.x 4.x 布局 <Switch android:id="@+id/setting_switch"android:layout_width ...

  4. pythongui日历控件_“五一”快到了,用Python中PyQt5做一个日历,QCalendar控件详解...

    前面内容,我们详细了解了PyQt5中的一些常用控件 精彩内容回顾 Python用PyQt5设计界面,如何正确显示一幅图片,QPixmap控件详解 拥有漂亮的笔刷才能绘制多彩界面,PythonPyQt5 ...

  5. Spinner控件详解

    Spinner控件详解 效果图 修改Spinner样式 在介绍之前,先看一下系统原生的样式 6.x & 5.x系统样式 4.x系统样式 官方文档 XML属性 方法 描述 android:dro ...

  6. 【转】ASP.NET验证控件详解(非空验证,比较验证,范围验证,正则表达式,自定义验证)...

    [转]ASP.NET验证控件详解(非空验证,比较验证,范围验证,正则表达式,自定义验证) ASP.NET验证控件详解 现在ASP.NET,你不但可以轻松的实现对用户输入的验证,而且,还可以选择验证在服 ...

  7. 常用数据绑定控件详解

    常用数据绑定控件详解 GridView内容详解(1) GridView内容详解(2) DataList内容详解 ListView详解(一) ListView详解(二) 导航控件的高级应用 from:h ...

  8. WindowsMediaPlayer 11 控件详解

    WindowsMediaPlayer 11 控件详解 转载别人的VB内容 C#中大多也通用 都是Microsoft的作品 . 属性/方法名: 说明: [基本属性] URL:String; 指定媒体位置 ...

  9. Qt Quick - Popup控件详解

    Qt Quick - Popup控件详解 Popup是基于Qt Quick中的一种弹出式用户界面控件.它可以和Window或ApplicationWindow一起使用.如果想要确保一个Popup在场景 ...

  10. Android事件流程详解

    Android事件流程详解 网络上有不少博客讲述了android的事件分发机制和处理流程机制,但是看过千遍,总还是觉得有些迷迷糊糊,因此特地抽出一天事件来亲测下,向像我一样的广大入门程序员详细讲述an ...

最新文章

  1. CentOS 6.x 播放 mp3 音乐 —— 成功
  2. Hibernat之关系的处理多对多
  3. 【JavaSE_06】Java中的数组(array)
  4. jquery查找ul属性不是hide,jQuery的ul显示/隐藏功能
  5. 在一台物理服务器上搭建VSAN实验测试
  6. 一个程序员的创业失败教训【转自CSDN】
  7. HTML编程之利用jquery制作长图动画的方法
  8. Enterprise Library修改后dll的签名改变
  9. Win7、Win10中Protel99se不能加载库文件解决方法
  10. UDP中recvfrom函数与sendto函数分析
  11. C语言-make概述
  12. C#程序设计第三版(李春葆)第12章文件操作课后习题答案
  13. 如果APP推广月预算只有10万 该如何展开推广?
  14. 理财APP有哪些维度可向用户推荐理财产品
  15. jsp页面之间传值总结
  16. 移动OA办公——Smobiler第一个开源应用解决方案,快来get吧
  17. 妻子决定你未来事业的高度,男的看一看,女的学一学
  18. 我的天空是灰色的......
  19. HTTP代理中的api 代理的使用方法有什么?
  20. 【技术综述】人脸算法新热点,人脸编辑都有哪些方向,如何学习

热门文章

  1. linux kernel 报错:FATAL: kernel too old
  2. Oliver的成绩(vector)
  3. 10个小故事,思考大数据
  4. [Game Engine]开源游戏框架(转至wiki)
  5. 任何情况下请通过正规渠道变更信用卡额度
  6. eNSP——通过Stelnet登录系统网络配置实验
  7. 【数据挖掘】金山办公2020校招大数据和机器学习算法笔试题
  8. SCAPY官方教程十一
  9. Electron入门宝典(三)菜单快捷键
  10. PID学习笔记:模拟加热系统的PID控制