- 浏览: 2964526 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (893)
- android (110)
- iphone (198)
- java (79)
- JavaScript手册-目录 (9)
- JavaScript手册-Array (19)
- JavaScript手册-Boolean (5)
- JavaScript手册-Date (50)
- JavaScript手册-Math (30)
- JavaScript手册-Number (14)
- JavaScript手册-RegExp (7)
- JavaScript手册-String (38)
- JavaScript手册-全局函数 (8)
- JavaScript实用脚本 (7)
- Others (21)
- java-jpcap (7)
- java-thread (1)
- ibm文章 (3)
- classloader (2)
- java-filter (2)
- 运行环境 (33)
- java-正则 (2)
- oracle (1)
- linux-shell (26)
- wap (1)
- sqlite (3)
- wow (1)
- jvm (1)
- git (5)
- unity3d (29)
- iap (2)
- mysql (23)
- nginx (14)
- tomcat (9)
- apache (2)
- php (1)
- ubuntu (40)
- rsa (1)
- golang (21)
- appstore (5)
- sftp (2)
- log4j (2)
- netty (18)
- 测试工具 (6)
- memcache (5)
- 设计模式 (1)
- centos (8)
- google_iab (5)
- iOS专题 (4)
- mac (10)
- 安装配置帮助手册 (2)
- im4java_graphicsmagick (5)
- inotify-tools (1)
- erlang (6)
- 微信支付 (1)
- redis (8)
- RabbitMQ (5)
最新评论
-
heng123:
Netty视频教程https://www.douban.com ...
netty4.0.23 初学的demo -
maotou1988:
使用Netty进行Android与Server端通信实现文字发 ...
netty4.0.23 初学的demo -
码革裹尸:
非常感谢,正好用上
android 呼入电话的监听(来电监听) -
rigou:
提示的/222.177.4.242 无法链接到ip地址,是什 ...
通过 itms:services://? 在线安装ipa ,跨过app-store -
duwanbo:
GridView与数据绑定
GridView与数据绑定
参考转载:http://www.cnblogs.com/over140/archive/2010/10/19/1855366.html
一个在平面上可显示多个条目的可滚动的视图组件,该组件中的条目通过一个ListAdapter和该组件进行关联。比如android手机中显示的应用:
比如实现九宫格图,用GridView是首选,也是最简单的。
GridView 的 XML属性
属性名称 |
描述 |
android:columnWidth |
设置列的宽度。
关联的方法为: setColumnWidth(int) 以像素为单位 |
android:gravity |
设置控件内容的位置。可选的值有: top、 bottom、 left、 right、 center_vertical、 fill_vertical、 center_horizontal、 fill_horizontal、 center、 fill、 clip_vertical 可以多选,用“ |”分开。
关联方法: setGravity (int gravity); 方法参数的常量定义参考Gravity.* 默认值为:Gravity.LEFT |
android:horizontalSpacing |
两列之间的间距。
关联方法: setHorizontalSpacing(int) |
android:numColumns |
列数。
关联方法: setNumColumns(int) |
android:stretchMode |
设置 grid中的条目以什么缩放模式去填充空间 。
关联方法: setStretchMode(int) 方法参数的常量定义参考GridView.* ,可选值: NO_STRETCH , STRETCH_SPACING , STRETCH_SPACING_UNIFORM ,或 STRETCH_COLUMN_WIDTH |
android:verticalSpacing |
两行之间的间距。
关联方法: setVerticalSpacing(int) |
以下是具体的例子:
例子效果图
main_grid_view.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" > <GridView android:id="@+id/main_grid_view_gridview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:numColumns="4" android:verticalSpacing="10dip" android:horizontalSpacing="10dip" android:stretchMode="columnWidth" android:gravity="center" /> </LinearLayout>
main_grid_view_item.xml配置
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/RelativeLayout_Item" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingBottom="5dip" > <ImageView android:id="@+id/main_grid_view_item_item_image" android:layout_centerHorizontal="true" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:layout_below="@id/main_grid_view_item_item_image" android:id="@+id/main_grid_view_item_item_text" android:layout_centerHorizontal="true" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </RelativeLayout>
Activity代码
//定义选项菜单 private String[] allOptionsMenuTexts = {"删除","保存","帮助","添加","详细","发送","电话","照相"}; private int[] allOptionsMenuOrders = {5,2,6,1,4,3,7,8}; private int[] allOptionsMenuIds = {Menu.FIRST+1,Menu.FIRST+2,Menu.FIRST+3,Menu.FIRST+4,Menu.FIRST+5,Menu.FIRST+6,Menu.FIRST+7,Menu.FIRST+8}; private int[] allOptionsMenuIcons = { android.R.drawable.ic_menu_delete, android.R.drawable.ic_menu_edit, android.R.drawable.ic_menu_help, android.R.drawable.ic_menu_add, android.R.drawable.ic_menu_info_details, android.R.drawable.ic_menu_send, android.R.drawable.ic_menu_call, android.R.drawable.ic_menu_camera }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_grid_view); //展示GridView showGridView(); } /** * 显示GridView. */ public void showGridView(){ final Context context = this; Integer[] itemImages = new Integer[allOptionsMenuIcons.length]; for(int i=0;i<itemImages.length;i++){ itemImages[i] = new Integer(allOptionsMenuIcons[i]); } //绑定GridView组件内容 List<Object[]> itemValues = new ArrayList<Object[]>(); itemValues.add(allOptionsMenuTexts); itemValues.add(itemImages); //定义适配器to参数 int[] to = {R.id.main_grid_view_item_item_text,R.id.main_grid_view_item_item_image}; int resource = R.layout.main_grid_view_item; //生成适配器:使用自定义工具类 SimpleAdapterUtil.java来生成适配器 SimpleAdapter simpleAdapter = SimpleAdapterUtil.create(context,itemValues,resource,to); GridView gridView = (GridView)findViewById(R.id.main_grid_view_gridview); gridView.setColumnWidth(50);//列宽 gridView.setNumColumns(3);//列数=3 gridView.setHorizontalSpacing(50);//列间距=50 gridView.setVerticalSpacing(60);//行间距=60 gridView.setGravity(Gravity.CENTER);//展示位置:可以参考Gravity.*中的定义 gridView.setStretchMode(GridView.NO_STRETCH);//设置 grid中的条目以什么缩放模式去填充空间:可以参考GridView.*中的定义 gridView.setAdapter(simpleAdapter); //监听item点击事件 gridView.setOnItemClickListener(new OnItemClickListener(){ @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(context, "["+allOptionsMenuTexts[position]+"]被点击了", Toast.LENGTH_SHORT).show(); } }); }
备注:SimpleAdapterUtil工具类的完整代码,可以看这篇文章《1个简单的SimpleAdapter工具类-SimpleAdapterUtil 》。
发表评论
-
Android Fragment 真正的完全解析(下)
2015-03-25 14:30 1085Android Fragment 真正 ... -
Android Fragment 真正的完全解析(上)
2015-03-25 10:14 875Android Fragment 真正的 ... -
Activity的生命周期方法
2015-03-25 09:54 547一:Activity的生命周期方法 Android ... -
Android在layout xml中使用include
2015-03-25 07:28 964在Android的layout样式定义中,可以使 ... -
一个支持圆角的快速ImageView:RoundedImageView
2015-03-07 09:50 11056一个支持圆角的快速ImageView:Rounded ... -
ImageView图片设置
2015-03-05 23:08 917显示任意图像,例如图标。ImageView类可以加载 ... -
ListActivity的onListItemClick不响应的解决办法
2015-03-04 17:57 1076ListActivity的onListItemClic ... -
ListView中有控件隐藏或显示造成的显示错误问题
2015-03-03 23:03 1815ListView中有控件隐藏或显示造成的显示错误问题 ... -
Android中Application类用法
2015-03-03 09:12 966Android中Application类用法 ... -
Android使用Application总结
2015-03-03 09:11 1169Android使用Application ... -
在android中运行java main方法
2015-02-27 10:38 964在android中运行java main方法 ... -
android BitmapFactory.Options
2015-02-19 21:01 988public Bitmap inBi ... -
android 基础demo例子
2015-02-16 21:06 806demoDatas.add(new DemoBe ... -
Android大图片裁剪终极解决方案
2015-02-15 17:08 2132Android大图片裁剪终 ... -
Android_照相机Camera_调用系统照相机返回data为空
2015-02-15 14:17 1263Android_照相机Camera_调用系统照相机返回 ... -
Android: 打印Bundle内容
2015-02-15 14:11 2924Android: 打印Bundle内容 有的时 ... -
android线程、UI、AsyncTask
2015-02-13 18:06 1251本文是转摘的,看过了觉得很好!所以转了过来!如果你想要 ... -
Fragment中ListView的使用
2015-02-06 23:01 2095Fragment中ListView的使用 直接 ... -
在安卓开发时用酷派手机无法打印出应用内的日志的解决方法
2014-12-11 20:39 1170在安卓开发时用酷派手机无法打印出应用内的日志的解决方法 ... -
查看安卓APK文件证书的方法
2014-12-04 10:05 948************************** ...
相关推荐
C#操作GridView控件绑定数据实例详解一文的实例代码,包含GridView的全部功能: (1)绑定数据源(List) (2)编辑:修改、更新、取消、删除 ...(3)搜索查询、翻页、行样式、数据绑定 (4)常见的错误与处理方法
Gridview数据绑定,Gridview数据绑定 C#
DevExpress的GridView动态绑定数据集,多线程动态修改UI自动刷新,输出中打印运行状态等
一步一步详解gridview与数据库连接过程 视频swf格式 请确认安装相关播放器
ASP.NET中的数据绑定-gridview,对此不了解的朋友们可以看下。
GridView数据绑定小技巧 GridView 数据绑定小技巧
gridview数据绑定和自定义分页,完整的例子,样式简单大方,下载即可用到项目中
asp.net, c#,gridview对数据进行绑定,增加,查询,删除,修改,数据, asp.net, c#,gridview对数据进行绑定,增加,查询,删除,修改,数据,
实现gridview的分布功能,上一页,下一页,首页,最后一页 实现sql数据库的连接功能,代码是自己做项目时的类,完全正确!
sharepoint gridview绑定
c# asp.net gridview 数据绑定
gridview模板列前后台数据绑定 html控件数据绑定 服务器控件绑定
DevExpress简单的GridControl 数据绑定
GridView操作Xml数据源GridView操作Xml数据源GridView操作Xml数据源GridView操作Xml数据源
Gridview数据绑定实例源代码.............
要求通过DataSource控件将数据库中的数据绑定到GridView中,并实现数据的更新和删除
Repeater DataList GridView 如何进行数据绑定 新增 删除 修改 查询
Gridview数据绑定2源代码。。。。。。。。。。。。。。。。。。。。。。
ASP.NET通过三成架构实现对数据的绑定。。。。
本人新手,以前用girdview绑定数据库都是通过sqldatasource实现绑定。 今天闲来无事,用代码实现绑定,同时通过aspnetpager实现分页。 本内容适合新手~