文档章节

IOS上路_14-简单示例-表单

vigiles
 vigiles
发布于 2013/07/17 13:49
字数 588
阅读 173
收藏 0

1.基本实现:

    1)配置.h文件:


    2)配置.m文件:

//
 //  CVUViewController.m
 //  IOS-0705-TabView
 //
 //  Created by apple on 13-7-5.
 //  Copyright (c) 2013年 apple. All rights reserved.
 //
 
 #import "CVUViewController.h"
 
 @interface CVUViewController ()
 
 @end
 
 @implementation CVUViewController
 
 //定义模型
 - (NSArray *)getTabs
 {
     NSLog(@"2");
 
     //延迟实力化
     if(! self.tbs)
     {
         //10个单元格
         self.tbs = [NSArray arrayWithObjects:@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"10",nil];
     }
 
     return self.tbs;
 }
 
 // 从模型中得到单元格的数量
 -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
 {
     NSLog(@"1");
 
     //注意这里调用的是方法返回数组再得到其属性值
     return self.getTabs.count;
 }
 
 //依次初始化单元格
 -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
 {
     NSLog(@"3");
 
     //标示符
     NSString * identifier=@"cell";
     //创建单元格
     UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:identifier];
 
     if (cell == nil) {
         //风格,标示符
         cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault  reuseIdentifier:identifier];
     }
 
     //表格内容(行号)
     cell.textLabel.text = [self.tbs objectAtIndex:indexPath.row];
 
     return cell;
 }
 
 //定义删除单元格事件
 -(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
 {
     NSLog(@"4");
 
     //得到现有模型
     NSMutableArray * ps = [self.tbs mutableCopy];
 
     //移除数据
     [ps removeObjectAtIndex:indexPath.row];
 
     //更新模型
     self.tbs = [ps copy];
 
     //重载数据
     [tableView reloadData];
 }
 
 //得到选择的单元格
 -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
 {
     //根据选择的单元格初始化
     UITableViewCell * cell = [tableView cellForRowAtIndexPath:indexPath];
 
     //创建一个字符串,得到所选的cell的文本
     NSString * str = cell.textLabel.text;
     NSLog(@"%@", str);
 
     //初始化对话框
     UIAlertView * alter = [[UIAlertView alloc] initWithTitle:@"选择单元格" message:str delegate:nil cancelButtonTitle:@"cancel" otherButtonTitles:@"ok" , nil];
 
     //显示alter对话框
     [alter show];
 }
 
 @end

    3)创建UI

拖放一个TableView到视图,右键File'sOwner添加dataSourcedelegate关联。


    4)测试:

2.自定义单元格:

    1)创建自定义单元格类:

        (1)Object-C文件:


        (2)继承UITableViewCell


    2)创建自定义单元格UI

        (1)Empty UI


        (2)和类文件同名:

        (3)在xib中放入一个TableViewCell控件,并修改文件关联:


        (4)修改标示符关联:

        (5)自定义单元格:

    3)项目原.h


    4)项目原.m

//
 //  CVUViewController.m
 //  IOS-0705-SelfTabView
 //
 //  Created by apple on 13-7-5.
 //  Copyright (c) 2013年 apple. All rights reserved.
 //
 
 #import "CVUViewController.h"
 
 //导入自定义单元格类
 #import "SelfCell.h"
 
 @interface CVUViewController ()
 
 @end
 
 @implementation CVUViewController
 
 //定义单元格数量
 -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
 {
 return 10;
 }
 
 //设置单元格高度
 -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
 {
 return 70;
 }
 
 //依次初始化单元格
 -(UITableViewCell *)
 tableView:(UITableView *)tableView
 cellForRowAtIndexPath:(NSIndexPath *)indexPath
 {
 //标示符。 -----------------------  对应图2. -> 2) ->(4)  ------------------------
 NSString * identifier=@"Cell";
 //创建单元格
 SelfCell * cell = [tableView dequeueReusableCellWithIdentifier:identifier];
 
 if (cell == nil) {
 //风格,标示符
 NSArray * nib = [[NSBundle mainBundle]
 loadNibNamed:@"SelfCell"   //自定义单元格
 owner:self options:nil];
 cell = [nib objectAtIndex:0];
 }
 
 return cell;
 }
 
 @end

    5)项目UI


    6)测试:

- end 

© 著作权归作者所有

vigiles

vigiles

粉丝 99
博文 84
码字总数 82564
作品 0
昌平
程序员
私信 提问
EBMIDE——相关文章索引

EBMIDE主项目 EBMIDE——序 EBMIDE——服务脚本IOS EBMIDE——服务调用 EBMIDE——表单、报表模板设计 EBMIDE——服务脚本IOS编辑器 EBMIDE——ORM数据实体编辑器 EBMIDE——服务脚本IOS(二)...

彭博
2012/03/09
73
0
IOS学习,最简单的表格应用程序,学习,列出博客

IOS编程浅蓝教程,这是博客地址http://www.cnblogs.com/haichao/category/425378.html IOS编程浅蓝教程:锲子 IOS编程浅蓝教程(一)先决条件:开始iOS编程的必要准备 IOS编程浅蓝教程(二) Hel...

andy521zhu
2015/01/17
174
0
(转)直接拿来用!最火的iOS开源项目(一)

AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目。AFNetworking是一个轻量级的iOS、Mac OS X网络通信类库,现在是GitHub上第三大Objective-C库。它建立在...

孙启超
2013/06/21
3.8K
0
【AR】开始使用Vuforia开发iOS(2)

原 设置iOS开发环境 安装Vuforia iOS SDK 如何安装Vuforia iOS示例 编译并运行Vuforia iOS示例 支持iOS金属 iOS 64位迁移 设置iOS开发环境 适用于iOS的Vuforia引擎目前支持运行iOS 9及更高版...

lichong951
2018/06/11
0
0
优秀Swift开源项目推荐

工具类 SwiftyJSON:GitHub上最为开发者认可的JSON解析类 Safe.ijaimi:源码漏洞分析检测工具,一键完成 Dollar.swift:Swift版Lo-Dash(或underscore)函数式工具库 OAuthSwift:国外主流网站...

拉偶有所依
2015/01/14
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

计算机实现原理专题--二进制减法器(二)

在计算机实现原理专题--二进制减法器(一)中说明了基本原理,现准备说明如何来实现。 首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式: 由于每次做减法时,我...

FAT_mt
今天
5
0
好程序员大数据学习路线分享函数+map映射+元祖

好程序员大数据学习路线分享函数+map映射+元祖,大数据各个平台上的语言实现 hadoop 由java实现,2003年至今,三大块:数据处理,数据存储,数据计算 存储: hbase --> 数据成表 处理: hive --> 数...

好程序员官方
今天
7
0
tabel 中含有复选框的列 数据理解

1、el-ui中实现某一列为复选框 实现多选非常简单: 手动添加一个el-table-column,设type属性为selction即可; 2、@selection-change事件:选项发生勾选状态变化时触发该事件 <el-table @sel...

everthing
今天
6
0
【技术分享】TestFlight测试的流程文档

上架基本需求资料 1、苹果开发者账号(如还没账号先申请-苹果开发者账号申请教程) 2、开发好的APP 通过本篇教程,可以学习到ios证书申请和打包ipa上传到appstoreconnect.apple.com进行TestF...

qtb999
今天
10
0
再见 Spring Boot 1.X,Spring Boot 2.X 走向舞台中心

2019年8月6日,Spring 官方在其博客宣布,Spring Boot 1.x 停止维护,Spring Boot 1.x 生命周期正式结束。 其实早在2018年7月30号,Spring 官方就已经在博客进行过预告,Spring Boot 1.X 将维...

Java技术剑
今天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部