美文网首页
第一次发文章,直接大招

第一次发文章,直接大招

作者: 猫见证 | 来源:发表于2016-02-25 20:19 被阅读0次

我觉得作为一个iOS开发肯定遇到过一个问题,使用tableViewHeadView,这个控件是很好用的,因为他让我们很轻松的分出复杂的控件和下面的cell的写法分开。

但是这个控件有坑,只要是你想啊,他在一个tableView的头部,然后如果他不是一个高度变化的固定View还好,你只需要在加载的时候把HeadView里面的子控件添加进去,然后设定死他的高度就好了,可是,问题是他如果是一个高度变化的呢??

好吧各位大牛都在笑我了,坑比,这都好意思写出来??好吧,但是本着装逼的需要还是贴出来吧,主要是为了不让简书空着,所以高手勿喷。

言归正传,怎么解决?他其实是因为你每次动态的改变headView的高度的时候,但是TableView已经加载好了,所以HeadView的高度变换了,但是tableView不知道,所以你的头部就遮挡住cell了,所以这个时候每当你改变以后,再一次的通知tableView 就好了,也就是每一次改变以后重新调取属性。


self.backTableView.tableHeaderView  = HeadView ;


好吧,被我的标题吸引进来的给位观众老爷就该说了,我去,能在坑点么?这个谁都知道,但是问题在于,现在为了适配比较多的使用了AutoLayOut。这个确实是个神器,有了它再也不用满脑子的想Frame了,但是如果你用这个来约束你的控件,然后你写了以这个self.backTableView.tableHeaderView  = HeadView ;方法发现然并卵,其实主要是,这个约束是在绘制的时候才会绘制出来控件的位置和宽高,所以你直接用这个方法没有,

然后iOS就有一个更牛逼的东西,,,

 layoutIfNeeded 这个方法能够在View没有绘制之前就能计算位置和宽高,所以这个问题的解决方法就是在写上面的赋值方法之前让他先绘制一下,


[HeadView layoutIfNeeded];

self.backTableView.tableHeaderView  = HeadView ;


这个方法同样适用于很多约束的控件的宽高不能计算的地方,

好了,完了,第一篇小文章就这么出了,谢谢点赞,鼓励一下新的写手,,啊哈哈,

相关文章

  • 第一次发文章,直接大招

    我觉得作为一个iOS开发肯定遇到过一个问题,使用tableView的HeadView,这个控件是很好用的,因为他让...

  • 生活就得有乐趣(1-24)

    神回复 1. 奥特曼为什么不直接发大招,要等怪兽快挂了才发? 神回复:你斗地主直接扔炸弹啊! 2. 为什么深海里的...

  • 发大招

    英语老师又叒叕发大招了。 以往都是听一些考试专门的英语听力。今天全部改了一个模式,改成影视里面的人物对话。这个可比...

  • 直接发

    怎么玩

  • 每日一笑

    1、黑爷:“奥特曼为什么不直接放大招,要等到怪兽快死了才放大招呢?” 宅男:“你斗地主直接扔炸弹啊。” 2、白姐:...

  • 终于要发大招啦

    下载这个APP 已有数周,原来是原创文章的集聚地,原来我下错了,本来想下载文章的,好几周没有看书了,想下载一些名著...

  • “你不成家,怎么立业?”

    “你的号还发不发文章了啊?” “发啊,只是不知道是什么时候。” “难道是在憋大招吗?” “脑子里想过的东西很多,却...

  • 搜罗一切webpack的好文章好工具

    webpack 优秀中文文章 转载 如有好文, 请到此issue里提交文章,或者直接发pull request. ...

  • 港“风”,讲风

    昨天看了内地禁片《树大招风》 我认为“树”代指三个贼,树大招风易被吹垮,“风”是命运的缥缈、局势的动荡、是人格的发...

  • 《百帽猫》三十九 梦想飞行员

    今天发一个朝着梦想飞行的飞行员!下次再说细节吧。做个预告~滑水了这么久。就是为了攒大招。哈哈~大招马上就要来了。大...

网友评论

      本文标题:第一次发文章,直接大招

      本文链接:https://www.haomeiwen.com/subject/wanikttx.html