【发布时间】:2014-03-22 17:22:00
【问题描述】:
我正在使用带有 2 个部分的 UITableView,并且我为每个部分标题保留了一个特定宽度,如下所示:
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
if (section==0) {
return 45;
}
if (section==1) {
return 20;
}
return 0;
}
这里也是viewForHeaderInSection 委托方法
-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
UILabel *lbl = [[UILabel alloc] init];
lbl.textAlignment = NSTextAlignmentCenter;
lbl.font = [UIFont fontWithName:@"AmericanTypewriter-Bold" size:15];
lbl.textColor = [UIColor orangeColor];
lbl.shadowOffset = CGSizeMake(0,1);
lbl.alpha = 0.9;
lbl.textAlignment = NSTextAlignmentLeft;
if(section == 0){
lbl.text =[LocalizationSystem get:@"Share_Today_times" alter:@""];
}
if(section == 1){
lbl.text =[LocalizationSystem get:@"Share_Month_Times" alter:@""];
}
return lbl;
}
问题是第一部分和它的标题之间有一个空格,在其他部分中不存在,正如您在下图中看到的第二部分的标题之间没有空格,这显然出现在第一部分(带黑点的区域),有人知道如何解决这些问题吗?提前致谢
【问题讨论】:
-
您很可能在
tableView:viewForHeaderInSection:方法中遇到了偏移问题 -
已进行编辑
-
为什么你的第一个部分有 45 个,你的标签可能在那个部分的顶部。
-
如果我删除了 45 标签不会出现,它会上升!!
-
您没有为标签设置框架或约束。你试过用框架初始化它们吗?
标签: ios objective-c uitableview