tableView.tableHeaderView赋值后立即刷新
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tableView.tableHeaderView赋值后立即刷新相关的知识,希望对你有一定的参考价值。
参考技术A 我的tableHeaderView是xib写的,xib高度根据后台返回的数据动态变化。第一次加载这个tabbleView时tableHeaderView总会显示的超高,比实际内容高,调用了
及时刷新
根据: https://www.jianshu.com/p/e876ccf668b4
将 Subview 添加到 self.tableView.tableHeaderView 不起作用
【中文标题】将 Subview 添加到 self.tableView.tableHeaderView 不起作用【英文标题】:Add Subview to self.tableView.tableHeaderView does not work 【发布时间】:2012-01-06 16:15:53 【问题描述】:我有一个UITableViewController
,我想扩展该表的tableHeaderView
。
所以在viewDidLoad
我添加了以下内容:
self.tableView.tableHeaderView = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, self.tableView.frame.size.width, 60.0f)];
很好,效果很好 - 我得到了我的标题视图。
现在我想在该视图的顶部添加一个按钮。所以我添加以下代码:
UIButton *someButton = [[UIButton alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 100.0f, 20.0f)];
[someButton setTitle:@"Filter" forState:UIControlStateNormal];
[self.tableView.tableHeaderView addSubview:someButton];
但该按钮不会出现在tableHeaderView
上。当我使用 UILabel
而不是 UIButton
运行相同的代码时,我可以看到标签。
我的错误在哪里?
【问题讨论】:
请注意:上述代码的第一行将导致非 ARC 应用程序发生泄漏。仅供复制和粘贴此代码的任何人参考。 【参考方案1】:看看这个 SO 问题:UIButton - alloc initWithFrame: vs. buttonWithType:
我建议你使用UIButton *someButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
或类似的东西。
【讨论】:
以上是关于tableView.tableHeaderView赋值后立即刷新的主要内容,如果未能解决你的问题,请参考以下文章
tableView.tableHeaderView 已设置但未绘制
tableView.tableHeaderView赋值后立即刷新
如何调整一个UITableView的tableHeaderView