gpt4 book ai didi

objective-c - iOS:TableView + 带有图像的部分中标题的标题

转载 作者:行者123 更新时间:2023-11-29 04:49:30 24 4
gpt4 key购买 nike

这是我第一次尝试在 iOS 中使用 TableView,但遇到了问题。

我有一个表格 View ,只有 2 个部分,每个部分有两行。我有一种情况,我需要在 tableview 的第一部分上方添加图像(类似于在 TableView 顶部添加标志),我尝试为第一部分创建/添加 headerView ,并将我的图像嵌入到它,但问题是图像不允许显示该部分的标题字符串。您认为我需要使用 UILable 创建并添加(addsubview)另一个字符串作为图 block 并将其附加到 headerView 还是有其他方法来完成此操作?只要我显示该部分的 headerView,问题就存在,一旦删除它,该部分标题就会出现。

目前我在以下位置执行此操作:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section    
{
if (section == 0)
return headerView;
return nil;
}

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
if (section == 0)
return headerView.frame.size.height + self.rowHeight+28.0; //
return 30.0;//for other title header section
}

我的 headerView 分配如下:

CGRect headerViewRect = CGRectMake(0.0,  10.0,  frame.size.width -50  , self.rowHeight+50.0);
headerView = [[UIView alloc] initWithFrame:headerViewRect];
headerView.backgroundColor = [UIColor clearColor];

UIImageView *titleImage = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MyTitlePicture.png"]] autorelease];
CGRect imageViewRect = CGRectMake(0.0, 0.0, frame.size.width -100 , self.rowHeight+28.0);
titleImage.frame = imageViewRect;
titleImage.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin;
[headerView addSubview:titleImage];

TIA,卡姆兰

最佳答案

tableView 方法 (viewForHeaderInSection) 应返回 headerView (UIVIew*)。该代码将返回您的部分的标题 View 。

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section    
{
if (section == 0){
CGRect headerViewRect = CGRectMake(0.0,0.0,320,40);
UIView* headerView = [[UIView alloc] initWithFrame:headerViewRect];
headerView.backgroundColor = [UIColor clearColor];

UIImageView *titleImage = [[[UIImageView alloc] initWithImage:
[UIImage imageNamed:@"MyTitlePicture.png"]] autorelease];
CGRect imageViewRect = CGRectMake(0.0, 0.0, 320 , 40);
titleImage.frame = imageViewRect;
titleImage.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin;
[headerView addSubview:titleImage];

//Then you can add a UILabel to your headerView
return headerView;
}
return nil;
}

关于objective-c - iOS:TableView + 带有图像的部分中标题的标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9100072/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com