iphone objective -c 开发 表视图和导航栏开发流程及注意事项

基本知识

1。在一个单元中放置更多的数据可以通过两种方法进行实现,一个是向UITableViewCell 添加子视图 另一种是通过子类化UITableViewCell.

2.表视图分为两种样式:分组表和索引表


重要的函数:



表视图的操作步骤:(前提使控制器类已经和nib文件进行了绑定)

1 添加表视图 然后和file owner(控制器)建立起数据源和委托

2 为表视图所对应的controller添加代码,使该类遵从两个协议,类需要使用这两个协议来充当表视图的委托和数据源,代码如下

@interface SimpleTableViewController :UITableViewController

<UITableViewDelegate,UITableViewDataSource>

3通过#parama mark Table View Data Source Method 分隔数据源方法//提供绘制表所需要的所有数据

通过

-(NSInteger)tableView:(UITableView *)tableView numberOfRowInSection:(NSInteger)section函数来设置表视图中cell的个数

4通过

-(UITableViewCell *)tableCView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 来设置cell中的内容

NSIndexPath是用来提供一行或者一个分区


1)在此方法中 首先应该声明一个静态字符串实例 此字符串充当某种表中单元的键

2)定义一个出列单元

UITableViewCell *cell = [tableview dequeueReusableCellWithIdentifier:SimpleTableIdentifier];获取表中出列单元

//就是这个意思如果一个屏幕上最多只能有10个cell 而且现在10个cell中都有内容当你向下滑的时候下面的单元消失在屏幕上那么这个单元就是出列单元 你可以直接使用此单元

3)如果没有出列单元那么我们就必须自己创建一个单元(为什么没有出列单元?举个例子最开始创建第一帧显示在用户面前的cell的时候都没有出列单元供他们使用,只能自己创建)

if(cell == nil)

{

cell = [[[UITableViewCell alloc]initWithFrame:CGRectZero reseIdentifier: SimpleTableViewIdentifier]autorelease];

//其中SimpleTableViewIdentifier就是咱们第一步定义的键,因为我们将重复使用此处创建的单元,因此确保他们具有相同的类型

//这里使用了一个CGRectZero的常量 它是Core Graphics 框架的一部分默认 这个框架没有连接到项目,你需要把它连接进来

}

4)从你类中存放数据的地方,取出数据放到需要显示的每一个单元格中

首先你必须要知道需要显示哪些行

 NSUInteger row = [indexPath row];

然后我们使用这个值从数组获取正确的字符串,分配给单元的text属性

cell.text = [listData objectAtIndex:row];

5)如果你还想往单元格的左侧添加一个图像那么:

UIImage *image = [UIImage imageNamed:@"star.png"];

cell.image = image;//实际上cell 隐含了一个image的成员 当成员被赋值时 会在单元格的左侧显示该成员



 

导航栏的操作步骤:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值