- 浏览: 535009 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
tangyunliang:
大哥你太历害了谢谢
Android基于XMPP Smack Openfire开发IM【四】初步实现两个客户端通信 -
u013015029:
LZ,请问下,在// 添加消息到聊天窗口 , 这里获取Ed ...
Android基于XMPP Smack Openfire开发IM【四】初步实现两个客户端通信 -
endual:
怎么保持会话,我搞不懂啊
Android基于XMPP Smack Openfire开发IM【一】登录openfire服务器 -
donala_zq:
显示:[2013-11-30 11:50:36 - Andro ...
android-----------新浪微博 -
donala_zq:
哥,运行不了啊
android-----------新浪微博
简介:上篇做了Table View的一些介绍 ,还做了一个TableView 的Plain样式的例子,这篇我们学习Grouped样式表的例子,还有用到前面读取Plist的知识(见iOS学习之 plist文件的读写),把Plist文件中的数据读取出来,放到Table view里展示出来。这里把全国30多个省份的城市,都列出来了,plist文件里还有城市的行政区,不过这里只列出省份和城市就ok了。效果图如下:
[img]
[/img]
那么开始吧。
1、新建项目
新的一个名称为TableViewGrouped的Single View Application项目,打开项目的xib文件,拖拽TableView控件到xib文件中,摆正位置。
2、给新建的TableView找到他的归属
选中新添的TableView ,Connection Inspector,找到delegate和datasource,从它们右边的圆圈拉线到Files Owner图标上,参考上篇的第3步:
[img]
[/img]
3、设置Table View的属性为Grouped样式
[img]
[/img]
4、导入plist文件
从其他文件夹导入Provineces.plist文件,这个文件我会传到源代码里,大家都能方便使用了,包括全国30个省份和城市,还有城市的区也有。
[img]
[/img]
[img]
[/img]
5、添加.h .m的实现代码。
.h文件添加一个property
第一步从Plist读取出数据,第二步给Table添加数据。
在viewDidLoad读取Plist,plist是个array类型的,所以使用Array读取。
.m文件的实现。
实现TableView表格部分,下面这些方法看方法名就能大概明白意思。
这个方法用来告诉表格有几个分组
这个方法告诉表格第section个分段有多少行
这个方法用来告诉某个分组的某一行是什么数据,返回一个UITableViewCell
这个方法用来告诉表格第section分组的名称 :
重点介绍下这个方法:
返回所有省份名称的数组 ,通过点击右边的省份名称能快速定位到这个省份的城市,也就是快速定位到这个section。
OK,运行。效果如下:
[img]
[/img]
试试改成plain样式的分段TableView看看:
[img]
[/img]
[img]
[/img]
那么开始吧。
1、新建项目
新的一个名称为TableViewGrouped的Single View Application项目,打开项目的xib文件,拖拽TableView控件到xib文件中,摆正位置。
2、给新建的TableView找到他的归属
选中新添的TableView ,Connection Inspector,找到delegate和datasource,从它们右边的圆圈拉线到Files Owner图标上,参考上篇的第3步:
[img]
[/img]
3、设置Table View的属性为Grouped样式
[img]
[/img]
4、导入plist文件
从其他文件夹导入Provineces.plist文件,这个文件我会传到源代码里,大家都能方便使用了,包括全国30个省份和城市,还有城市的区也有。
[img]
[/img]
[img]
[/img]
5、添加.h .m的实现代码。
.h文件添加一个property
#import <UIKit/UIKit.h> @interface ViewController : UIViewController @property (strong, nonatomic) NSArray *provinces; @end
第一步从Plist读取出数据,第二步给Table添加数据。
在viewDidLoad读取Plist,plist是个array类型的,所以使用Array读取。
.m文件的实现。
@implementation ViewController @synthesize provinces; - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. NSBundle *bundle = [NSBundle mainBundle]; NSString *plistPath = [bundle pathForResource:@"Provineces" ofType:@"plist"]; NSMutableArray *array=[[NSMutableArray alloc] initWithContentsOfFile:plistPath]; self.provinces = array; }
实现TableView表格部分,下面这些方法看方法名就能大概明白意思。
这个方法用来告诉表格有几个分组
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return [provinces count]; }
这个方法告诉表格第section个分段有多少行
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { NSArray *cities = [[provinces objectAtIndex:section]objectForKey:@"Citys"]; return [cities count]; }
这个方法用来告诉某个分组的某一行是什么数据,返回一个UITableViewCell
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { NSUInteger section = [indexPath section]; NSUInteger row = [indexPath row]; NSArray *cities = [[provinces objectAtIndex:section]objectForKey:@"Citys"] ; static NSString *GroupedTableIdentifier = @"cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: GroupedTableIdentifier]; if (cell == nil) { cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:GroupedTableIdentifier]; } //给Label附上城市名称 key 为:C_Name cell.textLabel.text = [[cities objectAtIndex:row] objectForKey:@"C_Name"]; return cell; }
这个方法用来告诉表格第section分组的名称 :
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section { NSString *provincName = [[provinces objectAtIndex:section] objectForKey:@"p_Name"]; return provincName; }
重点介绍下这个方法:
返回所有省份名称的数组 ,通过点击右边的省份名称能快速定位到这个省份的城市,也就是快速定位到这个section。
- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView { //返回省份的数组 NSMutableArray *array = [NSMutableArray arrayWithCapacity:35]; for (NSDictionary *dict in provinces) { [array addObject:[dict objectForKey:@"p_Name"]]; } return array; }
OK,运行。效果如下:
[img]
[/img]
试试改成plain样式的分段TableView看看:
[img]
[/img]
- TableViewGrouped.zip (32.9 KB)
- 下载次数: 0
发表评论
-
新风作浪博客学习(十九)在iOS虚拟键盘上添加动态隐藏按钮
2013-06-08 09:19 860为了给用户比较良好的交付,想在键盘上添加一个按钮,实时根据键盘 ... -
新风作浪博客学习(十八)openURL的使用(iOS调用系统电话、浏览器、地图、邮件等) .
2013-06-08 09:19 1004今天遇见一行代码实现打开一个网页,比起印象里的UIWebVie ... -
新风作浪博客学习(十七)UIImageView响应点击事件 .
2013-06-08 09:19 705有时候会遇到点击一张图片,然后让这张图片触发一个事件,或者是跳 ... -
新风作浪博客学习(十六)Navigation + Tab Bar 常用组合框架 .
2013-06-07 08:50 1253看到很多项目中都采用的是Navigation加Tab Bar组 ... -
新风作浪博客学习(十五)google地图定位小Demo .
2013-06-07 08:50 1141[img][/img]今天写的是一个简单功能的google地图 ... -
新风作浪博客学习(十四)怎样向iPhone模拟器中添加图片 .
2013-06-07 08:50 786在我们做项目中可能需要使用图库,模拟器是有图库的,但是如何像其 ... -
新风作浪博客学习(十三)表视图的分组分区和索引分区 .
2013-06-07 08:50 801本次实现的是表视图的分区和索引,代码和前面都差不多,主要还是代 ... -
新风作浪博客学习(十二)代码实现UITableViewCell表视图单元定制 .
2013-06-07 08:49 1001通常情况下我们会希望单元格UITableViewCell显示自 ... -
新风作浪博客学习(十一)UITableViewCell的标记、移动、删除、插入 .
2013-06-06 09:15 1118这篇文章是建立在 代码实现 UITableView与UITa ... -
新风作浪博客学习(十)代码实现 UITableView与UITableViewCell .
2013-06-06 09:14 1155我们常用的表格类视图就是用 UITableView与UITab ... -
新风作浪博客学习(九)两个UIPickerView控件间的数据依赖 .
2013-06-06 09:14 1072本篇实现功能是两个选取器的关联操作,滚动第一个滚轮第二个滚 ... -
新风作浪博客学习(八)代码实现UIPickerView .
2013-06-06 09:14 1284先说一下当个组件选取器,我们创建一个数组NSAray来保存选取 ... -
新风作浪博客学习(七)代码 实现UIDatePicker控件 和 Tab Bar 视图切换 .
2013-06-06 09:15 1108感觉代码写控件都一个理,先在ViewDidLoad中创建控件对 ... -
新风作浪博客学习(六)ios 视图切换翻页效果 .
2013-06-05 11:18 1061本文写的是视图切换,涉及到的内容有 1.实现代码添加Navi ... -
新风作浪博客学习(五)代码实现UISlider 和 UISwitch .
2013-02-18 09:15 1153本次实现的UISlider和UISwi ... -
新风作浪博客学习(四)把plist里数据显示在textField上 .
2013-02-18 09:15 918在代码实现Lable 、textFie ... -
新风作浪博客学习(三)NSBundle读取图片 plist文件和txt文件
2013-02-18 09:15 1731本文想简单介绍一下NSBundle读取图片到视图上,读取pli ... -
新风作浪博客学习(二)代码实现Lable 、textField创建界面以及键盘的处理
2013-02-18 09:15 1174今天写的是用代码实现一个简单界面,代码重复率比较高,可读性不是 ... -
新风作浪博客学习(一)plist文件读写操作
2013-02-18 09:14 1363文件plist 全名Property List,属性列表文件, ... -
GCDiscreetNotificationView提示视图
2013-06-05 11:17 559先看一下效果图: [img] ...
相关推荐
Plain样式通常用于无分组的线性列表,而Grouped样式则会在单元格之间创建分隔线,形成分组效果。 3. **自定义样式**:除了系统提供的样式外,开发者还可以通过自定义UITableViewCell来实现各种独特的视觉效果。这...
Plain样式呈现为单一连续的列表,而Grouped样式将内容分组到不同的区域,每组有自己的背景色。 1. **样式设置**: - 使用`UITableViewStyle`枚举来设置表格样式,例如`UITableViewStylePlain`或`...
本资源“IOS应用源码——设置不同风格的table view样式.zip”提供了关于如何自定义和美化UITableView的源代码示例,帮助开发者学习如何创建具有不同风格的表格视图。 首先,`mhnibtableviewcell.png`可能是一个截图...
grouped_table.json
可以使用`document.createElement`方法创建`<table>`、`<thead>`、`<tbody>`等元素,并通过`innerHTML`设置单元格内容。同时,我们需要处理合并相同项的问题,这可以通过计算`rowspan`属性来实现。以下是一个简单的...
Plain样式创建的是无分组的连续列表,而Grouped样式则将内容分组显示,每组有自己的背景色。 2. 自定义Cell: - UITableViewCell是默认的Cell类型,但我们可以创建自定义的UITableViewCell子类来添加额外的UI元素...
首先,MATLAB提供了`readtable`函数用于读取各种格式的数据表格,如CSV、Excel文件等。例如,如果你的数据文件是CSV格式,可以使用以下命令读取: ```matlab data = readtable('123.csv'); ``` 这里的'123.csv'是你...
storyboard 绘制 tableview 的demo 对于熟悉iOS storyboard 开发 理解 UITableViewController有帮助。 xcode 4.3.2 上测试通过 网上看了这么多例子,自己整理的,不容易啊,分享了。
在本例中,我们选择Grouped样式,以获得更美观的分组显示效果,适合用于输入界面。 3. ** storyboard设计**: - 使用Xcode的Interface Builder编辑storyboard文件,通过选择Table View对象并修改Attributes ...
苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV等苹果产品上。iOS与苹果的Mac OS X操作系统一样,它也是以Darwin为基础的,因此...
在iOS应用开发中,导航控制器(Navigation Controller)和分组表格视图(Grouped Table View)是两个重要的组件,常用于构建用户界面。本示例源码“DemoNavigation 2”是一个结合了这两个元素的iOS应用,适用于毕业...
本示例“IOS TableView Grouped”主要关注的是分组表格视图(UITableViewStyleGrouped),它以清晰的分组形式展示数据,使用户界面更加整洁、易于阅读。 分组表格视图的特点是将数据分成多个段落或组,每个组有自己...
UITableView可以设置为分组样式(style: .grouped),并可以添加右侧索引来快速跳转到特定的分组。 总结来说,"iOS-使用表格视图UITableView"项目涵盖了iOS开发中的基础列表展示技术,通过学习和实践,开发者可以...
1. **设置UITableView样式**:默认情况下,UITableView有两种样式:Plain和Grouped。在这个案例中,我们可能需要使用Plain样式,因为它允许创建无分组的连续单元格,更接近课程表的布局。 2. **自定义...
在Laravel框架中,"Laravel Grouped Widgets"通常指的是将相关的UI组件或者视图元素组织成一组,以便更好地管理并重用代码。这有助于提高代码的可读性,减少重复工作,并保持应用的整洁性。下面我们将深入探讨这个...
像任何其他Highcharts模块(例如,导出)一样,在Highcharts脚本标记下添加指向grouped-categories.js [removed]标记。 对于NPM用户: var Highcharts = require('highcharts'), HighchartsGroupedCategories = ...
Plain样式呈现单列无分组的列表,而Grouped样式则将内容分组显示,每组有独立的背景色,更适合作为章节或类别划分的数据展示。 在通讯录应用中,我们经常会看到一个边栏索引,允许用户快速滚动到以特定字母开头的...
grouped_data_by_newspaper.xlsx
传统的做法是通过Microsoft Excel这样的表格软件来实现,而在使用Python进行数据处理时,我们可以借助pandas包来完成相似的操作。 首先,需要明确的是,数据透视表(Pivot Table)是一种交互式的表,它能够将大量...