- 浏览: 417867 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
rkikbs:
有下载地址么?
我的iOS视频开放了,欢迎大家在线观看 -
wjpiao:
支持支持!
我的iOS视频开放了,欢迎大家在线观看 -
关东升:
wwwang89 写道关老师,你好 ,请问:我的服务器端是用j ...
iOS网络编程-ASIHTTPRequest框架同步请求 -
wwwang89:
关老师,你好 ,请问:我的服务器端是用java写的,不是.ne ...
iOS网络编程-ASIHTTPRequest框架同步请求 -
关东升:
crowning_2008 写道关老师 好!你好
iOS开发那些事-关于性能优化–选择nib还是故事板的讨论
Android中的数据能够通过GridView类实现表格化展现,它也属于列表类型的控件,其继承关系如下:
java.lang.Object
↳ android.view.View
↳ android.view.ViewGroup
↳ android.widget.AdapterView<T extends android.widget.Adapter>
↳ android.widget.AbsListView
↳ android.widget.GridView
GridView控件应用案例效果如图6-10所示。
图6-10 GridView控件使用效果图
程序代码请参考代码清单6-8:
【代码清单6-8】 chapter6_4/src/com/work/GridView_1.java
代码的关键是实现BaseAdapter适配器类——ImageAdapter,代码如下:
在convertView为null的时候实例化控件,imageView.setLayoutParams(new GridView.LayoutParams(60, 60)是设置一个单元格中图片大小是60×60像素。imageView.setPadding(8, 8, 8,设定GridView的单元格与其中的图片之间上、下、左、右空白。
布局文件chapter6_4/res/layout/grid.xml:
android:verticalSpacing="10dp"是两行之间的边距,android:horizontalSpacing="10dp"是两列之间的边距。android:numColumns="auto_fit"GridView列数设置为自动,android:columnWidth="60dp"是每列的宽度,也就是项目的宽度。android:gravity="center"是居中。
出自《Android开发案例驱动教程》第六章
java.lang.Object
↳ android.view.View
↳ android.view.ViewGroup
↳ android.widget.AdapterView<T extends android.widget.Adapter>
↳ android.widget.AbsListView
↳ android.widget.GridView
GridView控件应用案例效果如图6-10所示。
图6-10 GridView控件使用效果图
程序代码请参考代码清单6-8:
【代码清单6-8】 chapter6_4/src/com/work/GridView_1.java
public class GridView_1 extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.grid); GridView g = (GridView) findViewById(R.id.myGrid); g.setAdapter(new ImageAdapter(this)); g.setOnItemSelectedListener(new OnItemSelectedListener() { public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(GridView_1.this, "图片ID:" + mThumbIds[position], Toast.LENGTH_SHORT).show(); } public void onNothingSelected(AdapterView<?> parent) { } }); } private Integer[] mThumbIds = { R.drawable.yellowimage, R.drawable.redimage, R.drawable.icon, R.drawable.blueimage, R.drawable.photo1962, R.drawable.photo189, R.drawable.photo1803, R.drawable.photo1796, R.drawable.photo1732, R.drawable.photo1553, R.drawable.photo1537, R.drawable.photo1503, R.drawable.photo1453, R.drawable.photo1450, R.drawable.photo1447, R.drawable.photo1441, R.drawable.photo1433, R.drawable.photo1432, R.drawable.photo1431, R.drawable.photo1426, R.drawable.photo1425, R.drawable.photo1424, R.drawable.photo1423, R.drawable.photo1422, R.drawable.photo142, R.drawable.photo140, R.drawable.photo1220, R.drawable.photo1208, R.drawable.photo1207, R.drawable.photo101209, }; public class ImageAdapter extends BaseAdapter { private Context mContext; public ImageAdapter(Context c) { mContext = c; } public int getCount() { return mThumbIds.length; } public Object getItem(int position) { return position; } public long getItemId(int position) { return position; } public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView; if (convertView == null) { imageView = new ImageView(mContext); imageView.setLayoutParams(new GridView.LayoutParams(60, 60)); imageView.setPadding(8, 8, 8, 8); } else { imageView = (ImageView) convertView; } imageView.setImageResource(mThumbIds[position]); return imageView; } } }
代码的关键是实现BaseAdapter适配器类——ImageAdapter,代码如下:
public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView; if (convertView == null) { imageView = new ImageView(mContext); imageView.setLayoutParams(new GridView.LayoutParams(60, 60)); imageView.setPadding(8, 8, 8, 8); } else { imageView = (ImageView) convertView; } imageView.setImageResource(mThumbIds[position]); return imageView; }
在convertView为null的时候实例化控件,imageView.setLayoutParams(new GridView.LayoutParams(60, 60)是设置一个单元格中图片大小是60×60像素。imageView.setPadding(8, 8, 8,设定GridView的单元格与其中的图片之间上、下、左、右空白。
布局文件chapter6_4/res/layout/grid.xml:
<?xml version="1.0" encoding="utf-8"?> <GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/myGrid2" android:layout_width="fill_parent" android:layout_height="fill_parent" android:verticalSpacing="10dp" android:horizontalSpacing="10dp" android:numColumns="auto_fit" android:columnWidth="60dp" android:gravity="center" />
android:verticalSpacing="10dp"是两行之间的边距,android:horizontalSpacing="10dp"是两列之间的边距。android:numColumns="auto_fit"GridView列数设置为自动,android:columnWidth="60dp"是每列的宽度,也就是项目的宽度。android:gravity="center"是居中。
出自《Android开发案例驱动教程》第六章
发表评论
-
智捷课堂改版啦!
2015-08-04 12:09 1新站上线,为庆祝网站改版,全站所有视频限时免费三天(8月5日 ... -
《Android开发案例驱动教程》之十五章云端应用整篇下载
2011-12-08 18:08 1137《Android开发案例驱动教程》15章--云端应用[colo ... -
《Android开发案例驱动教程》源码
2011-12-08 17:57 1305《Android开发案例驱动教程》15,16,17章源码 目 ... -
android中google“定位查询”
2011-08-03 15:18 1218“定位查询”locate()方法,增加一个线程,在该线程中处理 ... -
7.1.5 选项卡结合案例详解
2011-07-27 08:58 1473选项卡是通过TabHost和TabActivity一起实现的, ... -
7.1.4 ScrollView结合案例详解
2011-07-26 17:50 2131ScrollView是一个滚动条控件,当屏幕中内容很多时候需要 ... -
7.1.3 TimePicker结合案例详解
2011-07-25 17:06 3218TimePicker是Android的时间设置控件。TimeP ... -
7.1.2 DatePicker结合案例详解
2011-07-23 15:56 1625DatePicker是Android的日期设置控件。DateP ... -
7.1.1 ImageSwitcher案例分析详解
2011-07-21 10:50 2163ImageSwitcher图像切换器,可以切换器图像。Imag ... -
7.5 TableLayout布局详解
2011-07-20 10:17 2033TableLayout表格布局,将子元素的位置分配到行或列中。 ... -
7.4 AbsoluteLayout布局详解
2011-07-19 16:35 4587AbsoluteLayout绝对布局,指定了子元素准确的x/y ... -
7.3 RelativeLayout布局详解
2011-07-19 14:11 1048RelativeLayout相对布局, 允许子元素指定他们相对 ... -
7.2 LinearLayout布局详解
2011-07-18 10:23 1059LinearLayout线性布局,线性布局是所有布局中最常用的 ... -
6.4 Android国际化和本地化
2011-07-14 15:37 1599何谓国际化和本地化呢?就是在资源文件夹res内建立不同国家语言 ... -
6.1.6 Gallery结合案例详解
2011-07-13 17:04 1491Gallery(相册)控件是个很不错的图片查看控件,屏幕中有一 ... -
6.2 Toast 详解
2011-07-12 17:02 895Toast用于向用户显示一些帮助或提示,有三种展现形式: • ... -
ListView分页(带图片)显示用法案例
2011-07-11 17:01 3139ListView是Android中最为常用的列表类型控件,Li ... -
Spinner用法案例
2011-07-11 15:26 2981Spinner控件也是一种列表类型的控件,它的继承关系如下: ... -
Android多媒体--网络文件播放
2011-07-08 15:22 1795网络文件就是指放在网络上的文件,也可能是流媒体等网络资源。由于 ... -
android多媒体开发--本地音频文件播放
2011-07-08 15:20 5944本地文件就是指文件放在Android系统的外部存储设 ...
相关推荐
Spermatid 6.1.5.apk
团队协作(工具包)软件【groupoffice6.1.5】协同办公软件团队协作(工具包)软件【groupoffice6.1.5】协同办公软件团队协作(工具包)软件【groupoffice6.1.5】协同办公软件团队协作(工具包)软件【groupoffice...
这个升级包从v6.0版本更新到v6.1.5版本,旨在提供新功能、性能优化以及可能存在的错误修复,以提高用户的编程体验和设备运行效率。 首先,我们来了解一下LOGO! Soft Comfort的主要功能。它主要用于设计、测试和诊断...
Qwt 6.1.5 版本是该库的一个特定发布,它包含了对图表、仪表盘和其他可视化组件的支持。这个压缩包"qwt-6.1.5.zip"是为了帮助开发者在 Qt 5.9.3 平台上(在 Ubuntu 18.04.3 操作系统上)进行图表相关的开发工作。 ...
赠送jar包:lettuce-core-6.1.5.RELEASE.jar; 赠送原API文档:lettuce-core-6.1.5.RELEASE-javadoc.jar; 赠送源代码:lettuce-core-6.1.5.RELEASE-sources.jar; 赠送Maven依赖信息文件:lettuce-core-6.1.5....
《 Raize Components 6.1.5 for Delphi 7:构建高效用户界面的艺术与实践》 在软件开发领域,组件库是提升开发效率、优化用户体验的重要工具。Raize Components 6.1.5 正是一款专为 Delphi 7 设计的组件库,它以其...
本教程将详细介绍如何在您的系统上安装、配置JIRA 6.1.5版本,并进行汉化,以及如何与MySQL数据库建立连接。 **一、JIRA 6.1.5的安装** 1. **下载JIRA**:首先,你需要从Atlassian官方网站获取JIRA 6.1.5的安装包...
P2PSearcher6.1.5云穿透版
V6.1.5版本说明 (1).增加138、595、5958等多种译码选择; (2).增加多种RGB交换方式; (3).增加左右对开功能选项; (4).增加16、20、24、32多种数据选择; (5).增加ICN2038S、ICN2053、SM16188、MBI5153等多种芯片...
黑群晖6.1.5引导文件,一个及其不错的文件,希望能帮助到大家!
海蜘蛛ISPV6.1.5,目前破解版本中最稳定的! 软件版本: v6.1.5 内核版本: 2.6.18 破解步骤如下: 一、安装完毕进控制台 二、使用muddyboot登陆 密码(123456) 三、输入root回车 四、输入regtools回车 五、在web...
JIRA 是澳大利亚 Atlassian 公司开发的一款优秀的问题跟踪管理软件工具,可以对各种类型的问题进行跟踪管理,包括缺陷、任务、需求、改进等。JIRA采用J2EE技术,能够跨平台部署。它正被广泛的开源软件组织,以及...
maven-jetty-plugin-6.1.5.jar
实测----EYOO ROUTER 海蜘蛛ISP 6.15破解版----OK可用 ====================具体破解方法==================== 一、安装完毕进控制台 ...三、输入root回车 四、输入regtools回车 五、在web控制台保存重起路由 ...
"jetty-util-6.1.5.jar"是Jetty项目的一个工具包,包含了用于Jetty服务器运行时所需的各种实用工具和类。 这个特定版本的Jetty Util库(6.1.5)提供了以下关键功能和知识点: 1. **线程池管理**:Jetty利用其内置...
海蜘蛛ISPV6.1.5,目前破解版本中最稳定的! 软件版本: v6.1.5 内核版本: 2.6.18 破解步骤如下: 一、安装完毕进控制台 二、使用muddyboot登陆 密码(123456) 三、输入root回车 四、输入regtools回车 五、在web...
海蜘蛛ISPV6.1.5,目前破解版本中最稳定的! 软件版本: v6.1.5 内核版本: 2.6.18 破解步骤如下: 一、安装完毕进控制台 二、使用muddyboot登陆 密码(123456) 三、输入root回车 四、输入regtools回车 五、在web...
Raize Components 6.1.5 带源码, 支持 Delphi2009/Delphi2010/DelphiXE/DelphiXE2/DelphiXE3/DelphiXE4/DelphiXE5
支持delphi xe5 Raize Components is a user interface design system for Delphi and C++Builder. At its center is a collection of more than 125 general-purpose native VCL controls. Built on a foundation ...
LED Player 6.0(版本V6.1.5)是用于控制单双色LED屏幕和门楣全彩LED屏幕的软件。以下是关于该软件的一些常见特点和功能: 1.LED屏幕控制: LED Player 6.0 允许用户控制单双色LED屏幕和门楣全彩LED屏幕,包括对...