自定义uitableviewcell的几种运用方法
来源:互联网 发布:手机淘宝爱逛街入口 编辑:程序博客网 时间:2024/05/16 14:18
1.利用xib
设计好自定义的cell并且连接好控件后 有两种方法引用我们自己的cell
方法1:
1 -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 2 { 3 static NSString *cellIdentifier=@"name"; 4 BOOL nibsRegistered=NO; 5 if (!nibsRegistered) { 6 UINib *nib=[UINib nibWithNibName:@"MyCell" bundle:nil]; 7 [tableView registerNib:nib forCellReuseIdentifier:cellIdentifier]; 8 nibsRegistered=YES; 9 }10 MyCell *cell=[tableView dequeueReusableCellWithIdentifier:cellIdentifier];11 //cell 上的元素初始化代码12 13 return cell;14 }
UINib *nib=[UINib nibWithNibName:@"MyCell" bundle:nil];[tableView registerNib:nib forCellReuseIdentifier:cellIdentifier];
这两句代码是引用我们自己定义的cell的关键 首先读取我们自己定义的cell的nib文件 再在tableView中注册 此时 我们定义的cell便加入
到了tableView的可重用队列当中了
MyCell *cell=[tableView dequeueReusableCellWithIdentifier:cellIdentifier];
这句代码从中取出一个事例 然后初始化 并返回给tableView显示
方法2:
1 -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 2 { 3 static NSString *tableCellIdentifier = @"name"; 4 MyCell *cell = (MyCell *)[tableView dequeueReusableCellWithIdentifier:tableCellIdentifier]; 5 6 if(cell == nil){ 7 NSArray *nib = [[NSBundle mainBundle]loadNibNamed:@"MyCell" owner:self options:nil]; 8 for(id oneObject in nib){ 9 if([oneObject isKindOfClass:[MyCell class]]){10 cell = (MyCell *)oneObject;11 }12 }13 }14 //cell初始化。。。15 16 return cell;17 }
2.利用storyboard自定义cell
利用storyboard自定义cell比较简单 较xib 方法 少了读取xib文件的一步
在storyboard中拖出一个tableViewController后 拖上去一个cell 然后自己设计cell 最后一定要填上identifier
此时cell已经磨人添加到了tableview的 重用队列中了
引用的时候只需
1 -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath2 {3 //这个是在storyboard中设置的identifier4 static NSString *tableCellIdentifier = @"name";5 MyCell *cell = (MyCell *)[tableView dequeueReusableCellWithIdentifier:tableCellIdentifier];6 //cell初始化7 return cell;8 }
纯属自己的一些理解 写下来方便自己记忆 如有错误指出 希望大家讨论指正
转载请著名出处http://www.cnblogs.com/bucengyongyou/archive/2012/09/02/2667330.html
0 0
- 自定义uitableviewcell的几种运用方法
- 自定义UITableViewCell的几种方法
- 两种使用自定义UITableViewCell的方法
- 自定义UITableviewCell的三种方法
- 三种自定义UITableViewCell的方法
- 关于 去除UITableViewCell复用机制 的几种方法
- 去除UITableViewCell复用机制 的几种方法
- UITableView和UITableViewCell的几种样式
- UITableViewCell和UICollectionView的几种动画
- UITableView和UITableViewCell的几种样式
- UITableView和UITableViewCell的几种样式
- java 运用数组常用的几种排序方法
- iOS开发中,去除UITableViewCell重用机制的几种方法
- 自定义的tabBarController的几种方法
- 自定义UITableViewCell的两种方式
- 自定义UITableViewCell的内容
- 自定义UITableViewCell的内容
- 自定义UITableViewCell的背景
- 反射
- PCServer,刀片机,小型机,大型机这些都神马东东
- PS怎样去掉图片上的文字
- Zookeeper之Zab协议介绍
- Cocos2d-x游戏开发——重复动作CCRepeatForever&CCJumpBy
- 自定义uitableviewcell的几种运用方法
- 【转载】图解classloader加载class的流程及自定义ClassLoader
- oracle--关系数据库与SQL语言环境
- 消息流C -- NMS算法
- Physics2D.Raycast 光线投射
- Thinking In Java有感——java泛型
- android进程创建分析
- 恢复votedisk报错CRS-4000: Command Replace failed, or completed with errors.
- android中handler+thread+Asyntask使用方法