tableView的常用代理方法
#pragma mark - <UITableViewDelegate>一般用于tableview的时间监听,比如选中和编辑
/**
* 选中某一行的时候调用(点击某一行)
*
* @param indexPath 被选中的那一行
*/
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"selectRowAtIndexPath - %zd", indexPath.row);
}
/**
* 取消选中某一行的时候调用
*
* @param indexPath 被取消选中的那一行
*/
- (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"deselectRowAtIndexPath - %zd", indexPath.row);
}
/**
* 告诉tableView第indexPath行cell的高度
*/
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.row % 2 == 0) {
return 100;
}
return 70;
}
#pragma mark -头部和尾部显示的内容和高度
/**
* 设置头部的显示高度
*/
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
return 100;
}
/**
* 告诉tableView第section显示怎样的头部控件
* 返回值类型为UIView:可以把头部要显示的内容添加到view上返回
*/
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
return [UIButton buttonWithType:UIButtonTypeContactAdd];
}
/** 尾部显示的高度*/
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
{
return 44;
}
/** 尾部显示的内容*/
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
{
return [UIButton buttonWithType:UIButtonTypeContactAdd];
}
#pragma mark -@protocol UITableViewDelegate<NSObject, UIScrollViewDelegate>
/** 因为tableView代理遵守scroll的代理,所以可以实现UIScrollViewDelegate代理中的方法*/
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
NSLog(@"----%@", scrollView);
}