参考:http://stackoverflow.com/a/526825

有这么一种需求,在列表顶端显示一些别样的数据,而这个别样的数据则需要通过一个别样的 View 来展现,它便是 UITableView 的 tableHeaderView。

倘若 tableHeaderView 里的内容很固定,高度不要随着内容的不同而改变,这样还好。

如果,高度是需要动态改变的,某些人(比如我)可能就会遇到这样一个难题:

已经给 view 中的每个子 view 设置过值了,高度算过了,frame 也重新设置过了,可 tableHeaderView 的高度却还是之前的高度,没有变化。内容变多,则会有一部分看不见了;内容变少,则有一部分空白,放在那里实在不好看。

怎么办??

view 作为 tableView 的 tableHeaderView,单纯的改变 view 的 frame 是无济于事的,tableView  不会大度到时刻适应它的高度(以后 Apple 会不会改变就不知道了),所以,如何告诉tableView 它的 tableHeaderView 已经改变了?很简单,就一句话(关键最后一句):

[webView sizeToFit];
CGRect newFrame = headerView.frame;
newFrame.size.height = newFrame.size.height + webView.frame.size.height;
headerView.frame = newFrame;
[self.tableView setTableHeaderView:headerView];

这样以后,效果就出来了。不过这种过度显得有些生硬,能不能加一点点动画,让它变得顺眼一些呢?试试下面的代码:

[self.tableView beginUpdates];
[self.tableView setTableHeaderView:headerView];
[self.tableView endUpdates];

转载于:https://www.cnblogs.com/ihojin/p/tableHeaderView-resizeheight.html

UITableView:改变 TableHeaderView 的高度相关推荐

  1. Swift4 - 动态计算UITableView中tableHeaderView的高度 - 获取子控件高度和宽度

    核心 : /// 获取 子控件高度func sizeHeaderToFit(view:UIView) {view.setNeedsLayout()view.layoutIfNeeded()let wi ...

  2. 动态改变UITableView中的Cell高度

    往往在开发iPhone的应用过程中用得最多的应该算是UITableVIew了,凭着IOS给UITableView赋予了这种灵活的框架结构,让它不管在显示列表方面还是在排版方面都有着一定的优势.虽然UI ...

  3. js动态改变iframe的高度

    在数飞OA的开发过程中,遇到问题:一个jsp页面嵌套一个html页面. 〈iframe id="docDetail" width="100%"  height= ...

  4. js 鼠标拖拽改变div宽度高度

    js 鼠标拖拽改变div宽度高度, <!DOCTYPE html> <html><head><meta charset="UTF-8" / ...

  5. ios开源框架——UITableView+FDTemplateLayoutCell优化UITableViewCell高度计算

    前言 这篇文章是我和我们团队最近对UITableViewCell利用AutoLayout自动高度计算和UITableView滑动优化的一个总结.从这篇文章里,你可以读到: UITableView高度计 ...

  6. UITableView的动态获取高度 排版

    大神请绕路~~~ 最近做一款应用的界面,页面是图片,文字,头像,地址,时间等随机排列组成的. 这里简单记录,解决文字单独排版的解决方法,看了网上很多大神的博客分享内容. 刚开始,使用了最常见的方法: ...

  7. UITableView自动计算图片的高度 SDWebImage

    我们经常使用SDWebimage记载图片,主要记录在tableview中自动计算宽搞并加载图片 在cellforRow记载图片 -(UITableViewCell *)tableView:(UITab ...

  8. UITableView的tableHeaderView和viewForHeaderInSection區別

    記錄一下,tableHeaderView會隨著底下cell移動到消失. viewForHeaderInSection會一直固定在那裡.

  9. 【Android多屏适配】动态改变Listview item高度

    在ListView的Adapter中去直接获取传入View的LayoutParams是会报空指针异常的,唯一的方法是在xml中嵌套布局一层LinearLayout <?xml version=& ...

最新文章

  1. Java Review - 并发编程_LinkedBlockingQueue原理源码剖析
  2. Exchange端口列表
  3. shell脚本中取消高亮显示_Linux中强大的top命令
  4. 第三十三期:连接池中非常关键的两个参数,到底是干啥用的?
  5. linux 安装mysql5.7.12_Linux系统上安装mysql5.7.12
  6. 4n35光耦引脚图_光耦继电器的主要特点以及输入特性!先进光半导体
  7. mallcloud商城基于SpringBoot2.x
  8. 云计算实战系列十六(SQL II)
  9. android手机禁止休眠_浮窗----手机是否可以一心多用?这个只是开始而已。
  10. 【工程项目经验】dmesg查看linux系统缓存日志
  11. 硬币兑换python 每个面值有多个_【算法27】硬币面值组合问题
  12. java中经典的题目_java经典题目(一)
  13. (2016.12.02更新)CnCrypt文件保险柜1.18,兼容TrueCrypt加密卷,单文件绿色版
  14. JS获取下个月的第一天和最后一天
  15. CH340国产USB转异步串口芯片替代CP2102对比CH340C与CH340G
  16. php云扫墓平台_让“云”成为清明祭扫新平台
  17. SWAPIDC服务器销售模板,记录利用swapidc搭建IDC销售网站教程
  18. 二、解线性方程组的直接方法
  19. Google Geocoding API---地理编码与反向地理编码
  20. 财务概念整理 入账、结账、销账、挂账、立账etc.

热门文章

  1. Nginx的应用之安装配置
  2. Quartz简单实例
  3. 远离你身边消极爱抱怨的人!!
  4. websocket + node.js聊天系统
  5. oracle维护常用SQL语句(查看系统表和视图)
  6. MOTOMAN-SV3X运动学建模验证图
  7. html语言文本框的符号,如何将文本框中的值作为HTML字符串提交?
  8. 大厂Java岗面试心得记录
  9. android xml 解析
  10. eclipse中git解决冲突