我有一个UITableView
部分和标题,我在titleForHeaderInSection
设置如下:
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
return [NSString stringwithFormat :@"Section %d",section];
}
Defaulty它带有灰色背景,文字颜色为白色。如何将其更改为其他颜色。?
通过谷歌浏览并发现设置为viewForHeaderinSection
。
但我没有用它来设置标题。所以我不想写它。
如何在titleForHeaderInSection
中撰写?
答案 0 :(得分:2)
在iOS 6及更高版本中
[[UILabel appearanceWhenContainedIn:[UITableViewHeaderFooterView class], nil] setTextColor:[UIColor whiteColor]];
[[UILabel appearanceWhenContainedIn:[UITableViewHeaderFooterView class], nil] setFont:[UIFont systemFontOfSize:18.0f]];
[[UIView appearanceWhenContainedIn:[UITableViewHeaderFooterView class], nil] setBackgroundColor:[UIColor redColor]];
答案 1 :(得分:1)
- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection: (NSInteger)section
{
UIView *headerView = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, 30)] autorelease];
if (section == integerRepresentingYourSectionOfInterest)
[headerView setBackgroundColor:[UIColor redColor]];
else
[headerView setBackgroundColor:[UIColor clearColor]];
return headerView;
}
答案 2 :(得分:1)
titleForHeaderInSection
:此UITableView
的委托用于仅设置文字。您可以在下面看到它的返回类型NSString
。
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
// fixed font style. use custom view (UILabel) if you want something different
}
为了实现节标题的自定义视图,您唯一的选择是viewForHeaderInSection
委托方法。我可以肯定,您无法使用titleForHeaderInSection
设置标题的视图。此外,viewForHeaderInSection
的行为与titleForHeaderInSection
完全相同您可以看到如下所示:
-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
//Customized your view however you want.
return myCustomizedView;
}
答案 3 :(得分:0)
使用以下代码可能对您有所帮助:)
-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
UIView *tempView=[[[UIView alloc]initWithFrame:CGRectMake(0,0,300,25)]autorelease];
tempView.backgroundColor=[UIColor grayColor];
UILabel *tempLabel=[[UILabel alloc]initWithFrame:CGRectMake(0,0,300,25)];
tempLabel.backgroundColor=[UIColor clearColor];
NSString * headerText = [NSString stringWithFormat:@"%d",section];
tempLabel.text= headerText;
[tempView addSubview: tempLabel];
[tempLabel release];
return tempView;
}
和强>
- (float)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
return 25;
}