- 浏览: 534993 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
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简单描述:
在iPhone和其他iOS的很多程序中都会看到Table View的出现,除了一般的表格资料展示之外,设置的属性资料往往也用到Table View,Table View主要分为以下两种:
[img]
[/img]
Plain:这是普通的列表风格
Grouped :这是分块风格。
对于UITableView,我們有一些特殊的概念和术语,比如说我们成Table View的一行为Cell,而许多的Cell可以组成Section,每个Section上下又分別有Header和Footer,许多个的Section则组成了整个Table ,当然Table也有Header和Footer,下面看两种图就能明白这几个拗口名词了:
[img]
[/img]
[img]
[/img]
现在理论知识了解的差不多了。今天先做一个Plain样式的例子,这样加强对Table view的熟练使用。
1、新建项目
新建一个Single View Application,命名为TableViewDemo,开发环境是:Xcode 4.3,iPhone 5.1模拟器。
2、Table View放上控件
打开ViewController.xib文件,往ViewController.xib界面上拖拽一个Table View控件到现有的View上,
对齐。
[img]
[/img]
3、连接新添加的TableView和ViewController。
选中新添的TableView控件,打开连接检查器(Connection Inspector), 找到delegate和datasource并点中圆圈拉线连接到左边File's Owner图标上,为什么要把这两个连接File's Owner上呢?这是因为iOS使用的MVC设计模式,View和ViewController之间的对应关系,需要一个桥梁来进行连接的(即,对于一个视图,他如何知道自己的界面的操作应该由谁来响应),这个桥梁就是File's Owner。
[img]
[/img]
4、打开ViewController.h,添加协议和Property (类似与java里的实现接口)
5、打开.m文件,添加:
[img]
[/img]
这是发现有两个警告,提示未完成的实现,这提示的是UITableViewDelegate, UITableViewDataSource这个两个头文件里的协议的方法未实现。待会我们去实现它。
6、建立数据:
7、生成row:
关键的步骤来了,实现tableview添加数据源,返回TableView的行数,返回各行cell实例。
上面的第二个方法中,
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: TableSampleIdentifier];
这个语句根据标识符TableSampleIdentifier寻找当前可以重用的UITableViewCell。当某行滑出当前可见区域后,我们重用它所对应的UITableViewCell对象,那么就可以节省内存和资源。
这里UITableViewCellStyleDefault是表示UITableViewCell风格的常数,除此之外,还有其他风格,后面将会用到。
注意参数(NSIndexPath *)indexPath,它将行号row和部分号section合并了,通过[indexPath row];获取行号。之后给cell设置其文本:
cell.textLabel.text = [self.list objectAtIndex: row];
8、现在一个简单的TableView就弄好看,运行下看效果
[img]
[/img]
9、添加图片。
在项目上add files到项目,提交两张小图片,然后在cell返回之前添加如下代码
效果如下:
[img]
[/img]
10、设置行的风格
表示UITableViewCell风格的常量有:
UITableViewCellStyleDefault
UITableViewCellStyleSubtle
UITableViewCellStyleValue1
UITableViewCellStyleValue2
可以自己修改看看效果。可以添加一个detail
cell.detailTextLabel.text =@"打打打打";
return cell;
[img]
[/img]
11、选择table里的某一行
在.m文件@end之前编写 -(void)table 这时会自动提示可以实现的方法,
[img]
[/img]
我们选择这个方法
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
选中是做个提示,提示选中了那个信息,代码实现如下:
[img]
[/img]
在iPhone和其他iOS的很多程序中都会看到Table View的出现,除了一般的表格资料展示之外,设置的属性资料往往也用到Table View,Table View主要分为以下两种:
[img]
[/img]
Plain:这是普通的列表风格
Grouped :这是分块风格。
对于UITableView,我們有一些特殊的概念和术语,比如说我们成Table View的一行为Cell,而许多的Cell可以组成Section,每个Section上下又分別有Header和Footer,许多个的Section则组成了整个Table ,当然Table也有Header和Footer,下面看两种图就能明白这几个拗口名词了:
[img]
[/img]
[img]
[/img]
现在理论知识了解的差不多了。今天先做一个Plain样式的例子,这样加强对Table view的熟练使用。
1、新建项目
新建一个Single View Application,命名为TableViewDemo,开发环境是:Xcode 4.3,iPhone 5.1模拟器。
2、Table View放上控件
打开ViewController.xib文件,往ViewController.xib界面上拖拽一个Table View控件到现有的View上,
对齐。
[img]
[/img]
3、连接新添加的TableView和ViewController。
选中新添的TableView控件,打开连接检查器(Connection Inspector), 找到delegate和datasource并点中圆圈拉线连接到左边File's Owner图标上,为什么要把这两个连接File's Owner上呢?这是因为iOS使用的MVC设计模式,View和ViewController之间的对应关系,需要一个桥梁来进行连接的(即,对于一个视图,他如何知道自己的界面的操作应该由谁来响应),这个桥梁就是File's Owner。
[img]
[/img]
4、打开ViewController.h,添加协议和Property (类似与java里的实现接口)
#import <UIKit/UIKit.h> @interface ViewController : UIViewController<UITableViewDelegate, UITableViewDataSource> @property (strong, nonatomic) NSArray *list; @end
5、打开.m文件,添加:
@synthesize list = _list;
[img]
[/img]
这是发现有两个警告,提示未完成的实现,这提示的是UITableViewDelegate, UITableViewDataSource这个两个头文件里的协议的方法未实现。待会我们去实现它。
6、建立数据:
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. NSArray *array = [[NSArray alloc] initWithObjects:@"美国", @"菲律宾", @"黄岩岛", @"中国", @"泰国", @"越南", @"老挝", @"日本" , nil]; self.list = array; } - (void)viewDidUnload { [super viewDidUnload]; // Release any retained subviews of the main view. self.list = nil; }
7、生成row:
关键的步骤来了,实现tableview添加数据源,返回TableView的行数,返回各行cell实例。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *TableSampleIdentifier = @"TableSampleIdentifier"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: TableSampleIdentifier]; if (cell == nil) { cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:TableSampleIdentifier]; } NSUInteger row = [indexPath row]; cell.textLabel.text = [self.list objectAtIndex:row]; return cell; }
上面的第二个方法中,
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: TableSampleIdentifier];
这个语句根据标识符TableSampleIdentifier寻找当前可以重用的UITableViewCell。当某行滑出当前可见区域后,我们重用它所对应的UITableViewCell对象,那么就可以节省内存和资源。
这里UITableViewCellStyleDefault是表示UITableViewCell风格的常数,除此之外,还有其他风格,后面将会用到。
注意参数(NSIndexPath *)indexPath,它将行号row和部分号section合并了,通过[indexPath row];获取行号。之后给cell设置其文本:
cell.textLabel.text = [self.list objectAtIndex: row];
8、现在一个简单的TableView就弄好看,运行下看效果
[img]
[/img]
9、添加图片。
在项目上add files到项目,提交两张小图片,然后在cell返回之前添加如下代码
NSUInteger row = [indexPath row]; cell.textLabel.text = [self.list objectAtIndex:row]; UIImage *image = [UIImage imageNamed:@"qq"]; cell.imageView.image = image; UIImage *highLighedImage = [UIImage imageNamed:@"youdao"]; cell.imageView.highlightedImage = highLighedImage; return cell;
效果如下:
[img]
[/img]
10、设置行的风格
表示UITableViewCell风格的常量有:
UITableViewCellStyleDefault
UITableViewCellStyleSubtle
UITableViewCellStyleValue1
UITableViewCellStyleValue2
可以自己修改看看效果。可以添加一个detail
cell.detailTextLabel.text =@"打打打打";
return cell;
[img]
[/img]
11、选择table里的某一行
在.m文件@end之前编写 -(void)table 这时会自动提示可以实现的方法,
[img]
[/img]
我们选择这个方法
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
选中是做个提示,提示选中了那个信息,代码实现如下:
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ NSString *rowString = [self.list objectAtIndex:[indexPath row]]; UIAlertView * alter = [[UIAlertView alloc] initWithTitle:@"选中的行信息" message:rowString delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil]; [alter show]; }
[img]
[/img]
- MyTableViewDemo_2_.zip (38.8 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] ...
相关推荐
本示例"table view使用"是一个简单的UITableView的使用教程,通过它我们可以学习如何在应用中有效地运用UITableView。 首先,我们要创建一个UITableView的实例。在Swift中,我们通常在UIViewController的子类中实现...
在本篇文章中,我们将深入探讨"table-view"库的核心特性、使用方法以及它如何帮助提升开发效率。 1. **核心特性** - **数据驱动**:"table-view"库基于数组数据,这意味着你可以通过简单的JavaScript数组来定义...
要在项目中使用`laravel-table-view`,首先需要通过Composer安装。在终端中运行以下命令: ``` composer require yajra/laravel-datatables-oracle ``` 安装完成后,你需要在服务提供者中注册该包,通常是在`...
1. 自定义Cell:Table View Cell的默认样式通常是简单的文本和图像。然而,为了提升用户体验和界面美观性,开发者通常会自定义cell,包括添加更多元素(如按钮、滑块等)、改变布局、使用自定义字体和颜色,以及创建...
在iOS应用开发中,Table View是一种非常常见的UI组件,它用于展示列表数据,例如联系人、日程或新闻。在本“ios应用源码之视觉效果很好的table view美化效果demo”中,我们将深入探讨如何通过自定义Cell和运用动画来...
5. 响应式设计:为了使Table View适应不同设备和屏幕方向,源码可能包含了适配器布局(Auto Layout)和Size Classes的使用,确保每个cell在各种尺寸下都能正确显示。 6. 高性能优化:对于大数据量的Table View,...
在实际的实现过程中,开发者可能使用了UITableViewDataSource和UITableViewDelegate协议,这两个协议提供了定义table view内容和行为的方法。例如,`numberOfSectionsInTableView:`和`tableView:...
二、BootStrap table简单介绍 bootStrap table 是一个轻量级的table插件,使用AJAX获取JSON格式的数据,其分页和数据填充很方便,支持国际化 三、使用方法 1、引入js、css [js] view plain copy <!--css样式-->...
在iOS开发中,UITableView是一种非常重要的UI组件,用于展示列表数据。这个压缩包"IOS应用源码——设置不同风格...无论是简单的列表展示还是复杂的界面布局,掌握Table View的定制技巧都是iOS开发中不可或缺的一部分。
BootstrapTable是一种基于Bootstrap框架的前端数据展示插件,它提供了丰富的功能,如表格排序、分页、筛选等,使得在网页上创建交互式表格变得简单。在MVC(Model-View-Controller)架构中,结合C#后端,Bootstrap...
在`<view>`标签内引入`<table>`和`<tr>`、`<td>`等子标签,就可以构建出一个基础的表格结构。 `table`组件的使用方法可以参照链接中的教程:[https://blog.csdn.net/weixin_67585820/article/details/123791822]...
这个压缩包文件“IOS应用源码——社会化媒体分享(table view视图).zip”包含了一个iOS应用的源代码,该应用着重实现了一个基于UITableView的社会化媒体分享功能。在这个项目中,开发人员可能使用了Apple的UIKit...
在描述中提到的“封装成表格的形式”,通常意味着使用QGraphicsView和QGraphicsItem来模拟表格布局。这涉及到创建一个继承自QGraphicsItem的自定义类,这个类将代表表格的一个单元格。每个单元格可以包含一个控件,...
在这个名为 "Closure-Table-ClosureTable.rar" 的项目中,开发者使用了Spring、SpringMVC(SSM)框架来实现了一个演示 Closure Table 概念的简单应用。以下是关于 Closure Table 和 SSM 框架的相关知识点: 1. **...
QlikView是一款先进的商业智能软件,其使用手册详细介绍了如何安装与使用QlikView进行数据处理和分析。在详细说明手册中所涉及的知识点之前,需要明确QlikView的核心特性在于其关联数据模型和内存计算,这使得它在...
本文实例讲述了微信小程序实现的绘制table表格功能。分享给大家供大家参考,具体如下: 表格的绘制 js Page({ data:{ infeed:[', 1周, 2周, 3周, 总计], endwise1: 游泳, tb1:0, tb2:0, tb3:0, tb4:0, endwise2: ...
6. **使用方法**: 要使用这个库,开发者需要先安装Python环境,然后通过pip或其他包管理器安装cdk-dynamo-table-view库。接着,在CDK项目中导入并配置库,连接到DynamoDB实例,最后运行程序以启动表格视图。 总结,...