如何将图像添加到表格视图“标题”中?
Posted
技术标签:
【中文标题】如何将图像添加到表格视图“标题”中?【英文标题】:How can I add an image into a tableview "header"? 【发布时间】:2010-02-23 22:18:58 【问题描述】:我有一个UITableView
,我在其中显示数据列表。我想要一个徽标,而不仅仅是视图标题部分的文本。下面的代码只给了我文字。
关于如何在其中获取图像的任何想法?
- (void)viewDidLoad
[super viewDidLoad];
self. = @"Videos";
【问题讨论】:
我刚刚意识到,不清楚您是想要整个表格的标题(只有一个,在第一个单元格上方)还是部分标题(每个部分一个,浮动在第一个单元格上方)。跨度> 抱歉不清楚。是的,我希望它位于第一个单元格上方。 好的,你想要的是 UINavigationBar 中的图像。这与表格视图标题或部分标题不同,它们都是 UITableView 的一部分,并且会随着其内容滚动。汤姆哈灵顿的答案就是你想要的。 【参考方案1】:类似的东西:
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
return 69.0;
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
UIView* headerView = [[UIView alloc] initWithFrame: CGRectMake(0.0, 0.0, 320.0, 69.0)];
headerView.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageWithContentsOfFile: [[NSBundle mainBundle] pathForResource: @"header1" ofType: @"png"]]];
return headerView;
【讨论】:
这会将图像放在每个部分的标题上,而不是表格标题上。【参考方案2】:要在导航栏中获取图标(基本上是 Facebook 应用程序所做的),请使用 navigationItem 的 titleView 属性。您可以在其中放置任意 UIView,在透明背景上带有徽标的 UIImageView 会产生与 Facebook 使用的相同的效果。在 viewDidLoad 中执行此操作即可完成设置。
任何视图控制器都可以使用 UINavigationItem,因此如果您不使用导航控制器,您应该仍然可以使用。
或者,只要在有意义的地方添加一个 UIToolbar,并给它一个 UIBarButtonItem 和一个设置为 UIImageView 的自定义视图。
【讨论】:
以上是关于如何将图像添加到表格视图“标题”中?的主要内容,如果未能解决你的问题,请参考以下文章
如何在swift ios中将多个图像添加到自定义表格视图单元格?