0

我可以有一个节标题自定义如下:

在此处输入图像描述

我知道我们可以使用

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

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

我当前的部分标题

在此处输入图像描述

请让我知道,因为这非常重要。

谢谢你。

最好的祝福。

更新

嘿,我很高兴我几乎做到了我想知道的是,现在我怎样才能在图像视图上获得日期,即图像与节标题上的日期重叠。

- (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 和我添加图像后的视图。

在此处输入图像描述

4

1 回答 1

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;
}

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

在此处输入图像描述

检查编辑的答案

如果你把日期放在一起,然后用

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);

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

于 2013-07-30T05:55:42.140 回答