随笔-193  评论-715  文章-1  trackbacks-0
原文地址: http://blog.sina.com.cn/s/blog_7e3132ca0100wyls.html
在XCode对应头文件中修改该类所继承的父类:
@interface TableViewController:UIViewController <UITableViewDataSource, UITableViewDelegate>
{
}
在对应的.m文件中添加如下代码:
@implementation TableViewController
{
UITableView *tableView = [[UITableView alloc]initWithFrame:CGRectMake(0,0,320,460) style:UITableViewStylePlain];
tableView.dataSource = self;
tableView.delegate = self;
[self.view addSubview:tableView];
}
这样就在view上添加了一个tableView,但其样式是默认的,其中的内容也是空白的,而且此时是无法运行的,因为在头文件中添加了UITableViewDataSource和UITableViewDelegate两个类,所以必须设置一些自定义tableView样式的方法,下面列举了一些相关的方法:
设置Cell高度:
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
设置SectionHeader高度:
-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
设置SectionFooter高度:
-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
设置Section数目:
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
 
设置SectionHeader内容:
-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
设置各个Section中的Cell个数: 
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
设置Cell内容: 
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
 
设置Cell行缩进量:
-(NSInteger)tableView:(UITableView *)tableView indentationLevelForRowAtIndexPath:(NSIndexPath *)indexPath
设置Cell被选中响应前动作(例如:可用以判断选中的Cell,来阻止其响应)
-(NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath
设置Cell选中触发响应:
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
posted on 2011-12-29 09:12 Robin's Programming World 阅读(2134) 评论(1)  编辑  收藏 所属分类: 其它

评论:
# re: [转]自定义UITableView 2012-11-01 22:58 | superchen
博主把最核心,最常用的函数都罗列出来了!博主可以进IOS中高级开发群:118623167和大家讨论,大家一定能收获很多  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: