iOS表格制作

由于项目上的需求,需要做一个表格出来,来显示流程状态。刚开始脑子一头雾水,没有一点思路,但是靠着自己的座右铭--“世上无难事,只怕有心人”,克服了所有困难。好,不说了,讲正事。

制作表格,还是需要tableView来做。

1. 创建一个UIView对象 ;

UIView
*tableViewHeadView=[[UIView
alloc]initWithFrame:CGRectMake(0,
0, kCount*kWidth,
kHeight)];

self.myHeadView=tableViewHeadView;
//(myHeadView 是 UIView)

2.创建N个字段的View的对象,放到 上面创建的tableViewHeadView上;

for(int
i=0;i<kCount;i++){

UIView
*headView=[[UIView
alloc]initWithFrame:CGRectMake(i*kWidth,
0, kWidth, kHeight)];

headView.backgroundColor=[UIColorcolorWithRed:arc4random_uniform(255)/255.0green:arc4random_uniform(255)/255.0blue:arc4random_uniform(255)/255.0alpha:1];

[tableViewHeadView
addSubview:headView];

}

3.然后创建一个UITableView对象 ;

UITableView
*tableView=[[UITableViewalloc]initWithFrame:CGRectMake(0,
0,
self.myHeadView.frame.size.width,
460)
style:UITableViewStylePlain];

tableView.delegate=self;

tableView.dataSource=self;

tableView.bounces=YES;

tableView.separatorStyle=UITableViewCellSeparatorStyleNone;

self.myTableView=tableView;

tableView.backgroundColor=[UIColorwhiteColor];

4.创建一个UIScrollView对象,放置上面的tableView对象,并且将其位置右移部分像素;

UIScrollView
*myScrollView=[[UIScrollViewalloc]initWithFrame:CGRectMake(kWidth*0.7,
0,
self.view.frame.size.width-kWidth*0.7,
480)];

[myScrollView addSubview:tableView];

myScrollView.contentSize=CGSizeMake(self.myHeadView.frame.size.width,0);

myScrollView.bounces=YES;

[self.view addSubview:myScrollView];

5.创建表最左边的的字段的列;//有人会问,为什么不在上面的tableview里面一起表现出来呢。这里,我想告诉你的是,为了实现,表格第一列不动,其他列可以滑动的效果,所以这样做了。这样做
还有最重要一步,就是要实现滚动非第一列的时候,保证整个tableView和 第一列同时滑动,这就是我第6步要实现的了;

self.timeView=[[TimeView alloc]initWithFrame:CGRectMake(0,
100,
kWidth*0.7,
kCount*(kHeight+kHeightMargin))];
//在TimeView 类里面,创建了一个tableView

[self.view
addSubview:self.timeView];

6. 实现UIScrollView的delegate

-(void)scrollViewDidScroll:(UIScrollView
*)scrollView

{

CGFloat offsetY=
self.myTableView.contentOffset.y;

CGPoint
timeOffsetY=self.timeView.timeTableView.contentOffset;

timeOffsetY.y=offsetY;

self.timeView.timeTableView.contentOffset=timeOffsetY;

if(offsetY==0){

self.timeView.timeTableView.contentOffset=CGPointZero;

}

}

7.接下来就是实现tableView的delegate 和
dataSource。

在这里要说明一下,Mycell这个类的初始化方法里面,又创建了N个view

- (id)initWithStyle:(UITableViewCellStyle)style
reuseIdentifier:(NSString *)reuseIdentifier

{

self = [super
initWithStyle:style
reuseIdentifier:reuseIdentifier];

if (self) {

for(int
i=0;i<20;i++){

UIView
*headView=[[UIViewalloc]initWithFrame:CGRectMake(i*kWidth,
0,
kWidth-kWidthMargin,
kHeight+kHeightMargin)];

headView.backgroundColor=[UIColor
whiteColor];

[self.contentView
addSubview:headView];

}

}

returnself;

}

-(NSInteger)tableView:(UITableView *)tableView
numberOfRowsInSection:(NSInteger)section

{

return kCount-1;

}

-(UITableViewCell *)tableView:(UITableView
*)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{

static NSString
*cellIdentifier=@"cell";

MyCell *cell = [tableView
dequeueReusableCellWithIdentifier:cellIdentifier];

if(cell==nil){

cell=[[MyCellalloc]initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:cellIdentifier];

cell.backgroundColor=[UIColorgrayColor];

//       
cell.selectionStyle=UITableViewCellSelectionStyleNone;

[cell
setSelectionStyle:UITableViewCellSelectionStyleDefault];

}

return cell;

}

8.最后异步需要将前面第1步,创建的那个headerView,放置到表头,并设置表头高度;

-(UIView *)tableView:(UITableView *)tableView
viewForHeaderInSection:(NSInteger)section

{

returnself.myHeadView;

}

-(CGFloat)tableView:(UITableView *)tableView
heightForHeaderInSection:(NSInteger)section

{

returnkHeight;

}

这里只是写了个极具简单的表格,没有将数据填充进去,后续会加进去的。。。

iOS表格制作,布布扣,bubuko.com

时间: 2024-10-29 19:05:53

iOS表格制作的相关文章

关于使用表格制作页面

在HTML中,表格的功能挺强大的.表格由 <table> 标签以及一个或多个 tr.th或td 元素组成.单元格可以包含文本.图片.列表.段落.表单.水平线.表格等等.所以,我们可以利用表格来制作一个网页页面.我在做相关练习时发现,若单单使用表格来进行页面的制作,是存在一定的困难.当然现在我们可以利用css来轻松布局.在用表格制作网页时,需要明确的是整个网页中,应该如何划分表格.哪些地方可以直接用一个表格表示,或者哪些地方需要将单元格合并才达到效果.有了清晰的思路后,做起来才不会乱套. 我在利

iOS -证书制作

iOS证书制作攻略及配置注意事项 使用APICloud平台开发APP商用,首先得有开发者账号和各种证书,之后云编译打包正式版,上传到appstore审核上架.现在APICloud特别推出,证书申请和配置在控制台配置证书的注意事项的攻略,提供给大家. 云编译p12证书制作 生成certSigningRequest文件 如图,打开应用程序->实用工具->钥匙串访问 如图,选择从证书颁发机构请求证书 接下来填写邮件地址,选择存储到磁盘,点击继续 如图,保存文件到桌面. 制作p12证书 首先打开苹果开

LaTeX表格制作备忘一

LaTeX的普通表格制作比较简单,但是,如果要精确控制格式,就有些麻烦了.今天在做一些文档,其中用到某一种表格,现把代码与说明记录于此以备忘. 环境:Ubuntu 16.04 64位桌面版 LaTeX编辑工具:TeXstudio 代码如下: \documentclass[oneside, AutoFakeBold]{article} \usepackage{geometry} % 用于页面设置 % 设置为A4纸,并按照MSOffice的默认尺寸设置四周边距 \geometry{ a4paper,

用表格制作百度首页

前一天学习了<table>和一系列的小指令用来制作表格,然后老师布置了制作百度首页的任务,看上去像是很简单结果还是弄了一天的时间,好在最后知道了错误修改的还算美观. 制作很简单,就是小细节上的东西容易出错,所以刚开始学一定要养成有了开头接着写结尾的好习惯. 最上面的一行导航栏还算简单,做好表格大小分配好百分比,剩下的超链接什么的都是再简单不过的内容了. 百度的logo和百度一下这一行起初是规划在了一个表格内,怎么调试都没办法弄好,早上尝试了把他们两个分成了两个表格就简单多了. 个人觉得最头疼的

Latex:表格制作全攻略

给出一个制作复杂表格的例子,制作表格主要用到multicolumn,multirow和cline,其中,要使用multirow,必须usepackage{multirow} 如果要制作出如下图所示的表格: 则可以通过如下的代码: \begin{table*} \begin{tabular}{|c|c|c|c|c|} hline hline multirow{2}{*}{Multi-Row} & multicolumn{2}{|c|}{Multi-Column} & multicolumn{

游戏制作之路:一个对我来说可实现的High-end的Mac/iOS游戏制作大概计划

对于学习一些东西,我比较习惯任务驱动式的学习,也就是说,要事先订好一个目标,要做什么东西,达到什么效果,然后根据自己了解的知识作一个可以实现这个目标的计划. 现在要学的是游戏制作,而且是High-end的3D游戏制作.如前文 游戏制作之路:游戏引擎选择.Mac下和Windows下UnrealEngine 4体验对比.文档及其他 所说的,我已经选择了UE4这个画面最顶级的引擎,它即使是在iOS上,画面也是最高端的,可以参考 Zen Garden 这个Demo.然后我也大概确认了可行性,现在要解决的

HTML之表格制作

如何制作一个表格? 如何制作一个表格呢?  观察如下代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>table</title> </head> <body> <table border='1' cellpadding="10" cellspacin

cocos2d 制作fnt 批量缩放png ios 批量制作图标 gamedevkit 支持windows, mac

0.制作了一个简单软件 这个软件有4个功能: 批量缩放png图片 根据美术给的数字小图等,制作fnt字体文件供cocos2d使用 批量制作ios 图标和android 图标(只需传入一张图片) 截图制作,传入5张IPhone6+的截图,生成IPhone5,IPhone6的截图(这个功能没什么用,不过当你个人开发制作20+个游戏的时候,就能省点力) 下面是具体功能介绍...当然这个软件暂定为收费. 1. cocos2d 制作fnt 文件 2.批量缩放png图片 我之前蛋疼地做了一个游戏,使用了两套

ios Framework 制作 的一个坑 Reason: image not found dyld: Library not loaded:

为什么会这样的?因为我们做的是动态库,在使用的时候需要额外加一个步骤,要把Framework同时添加到'Embedded Binaries'中 ... 详情 请见 http://www.cocoachina.com/ios/20141126/10322.html 为了防止连接失效 我把文字 随便 复制点过来 有没有写SDK或者要将一些常用的工具类做成Framework的经历? 你或许自己写脚本完成了这项工作,相信也有很多的人使用 iOS-Universal-Framework ,随着Xcode