自定义UITableViewSection标头

时间:2013-07-30 05:21:42

标签: ios uitableview

我可以按如下方式自定义节标题:

enter image description here

我知道我们可以使用

(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section

但这种定制是否可行?我有各自的图像。

我当前的部门标题

enter image description here

请告诉我,因为这非常重要。

谢谢。

最诚挚的问候。

更新

嘿,我很高兴我几乎完成了我想知道的事情,现在我怎样才能在图像视图上获取日期,即图像与部分标题上的日期重叠。

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    UIView *headerView = [[UIView alloc] init];
    [headerView setBackgroundColor:[UIColor colorWithRed:68/255.0 green:68/255.0 blue:68/255.0 alpha:1]];

    UIImageView *img1 = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 65, 61)];
    [img1 setImage:[UIImage imageNamed:@"blue_bg.png"]];

    UIImageView *img2 = [[UIImageView alloc] initWithFrame:CGRectMake(66, 0, 173, 61)];
    [img2 setImage:[UIImage imageNamed:@"black_bg.png"]];

    UIImageView *img3 = [[UIImageView alloc] initWithFrame:CGRectMake(239, 0, 65, 61)];
    [img3 setImage:[UIImage imageNamed:@"orange_bg.png"]];

    [headerView addSubview:img1];
    [headerView addSubview:img2];
    [headerView addSubview:img3];


    return headerView;
}

这是我的sectionHeader和我添加图片后的视图。

enter image description here

1 个答案:

答案 0 :(得分:0)

下载您上传的图片并使用该图片

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    UIImageView *img=[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];
    img.image=[UIImage imageNamed:@"eu96Z.png"];

    UILabel *lbl1=[[UILabel alloc] initWithFrame:CGRectMake(0, 0, 65, 61)];
    lbl1.text=@"17";
    lbl1.textAlignment=NSTextAlignmentCenter;
    lbl1.backgroundColor=[UIColor clearColor];
    [img addSubview:lbl1];

    return img;
}

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
    return 44;
}

使用以下空白图像并将标签添加为subView。

enter image description here

检查已修改的答案

如果你一起约会,那么用

分开
NSDateFormatter *df = [[NSDateFormatter alloc] init];
NSString *str = @"07/13/2013";

NSArray *arr = [str componentsSeparatedByString:@"/"];
NSString *date = [arr objectAtIndex:1];
NSString *month = [arr objectAtIndex:0];
month = [[[df monthSymbols] objectAtIndex:([month intValue]-1)] uppercaseString];
NSString *year = [arr objectAtIndex:2];

NSLog(@"%@ %@ %@",date,month,year);

并将其设置在您想要设置的位置。