首页 > 代码库 > IOS 7 viewForHeaderInSection 的section从1开始而不是从0开始
IOS 7 viewForHeaderInSection 的section从1开始而不是从0开始
【问题】
(UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 方法中的section貌似从1开始而不是从0
【思路】
程序中虽然设置了 self.tableView.sectionHeaderHeight =20
还还是是不行 viewForHeaderInSection 中的section始终还是从1开始。
于是我发现, 如果你使用方法:
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
return 40;
}
就从0开始啦。
尼玛真吭 IOS7的新特性,其实 self.tableView.sectionHeaderHeight =20 这种效率远远比方法要快。如果不存在特殊需求大家还是直接设置属性来吧。
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { return 40; } - (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.frame.size.width, 40)]; UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(20, 10, tableView.frame.size.width, 20)]; label.font = [UIFont systemFontOfSize:16.0f]; //UILabel的字体大小 label.numberOfLines = 0; //必须定义这个属性,否则UILabel不会换行 label.textColor = CR_RGBCOLOR(170, 170, 170); label.textAlignment = NSTextAlignmentLeft; //文本对齐方式 [label setBackgroundColor:[UIColor clearColor]]; label.text = self.sectionTitles[section]; [headerView setBackgroundColor:[UIColor clearColor]]; [headerView addSubview:label]; return headerView; } - (UIView *) tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { return [[CRCustomFooter alloc] init]; } - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSUInteger section = indexPath.section; NSUInteger row = indexPath.row; if(section == 1){ if (row == 0) { [self recommendToFriends]; [tableView deselectRowAtIndexPath:indexPath animated:YES]; }else if(row == 1){ [self sendFeedback]; [tableView deselectRowAtIndexPath:indexPath animated:YES]; }else if(row == 2){ [self rateApp]; [tableView deselectRowAtIndexPath:indexPath animated:YES]; }else{ } } }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。