码迷,mamicode.com
首页 > 移动开发 > 详细

iOS开发中的错误整理,百思项目'我的'模块,tableFooterViewHeight的问题.提醒自己对KVO和Block的运用欠缺

时间:2016-05-31 11:55:30      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

一.错误分析:由于tableFooterView中的数据是通过请求服务器后得到的,tableFooterViewHeight也是根据请求过来的数据经过布局子控件而计算出来的.(注意:计算高度是在子线程中执行的),导致了给TableView设置了tableFooterView,tableFooterView的高度为0.如下图:

技术分享

二.解决方案一:通过KVO监听自定义tableFooterView的高度变化

技术分享

解决方案二:通过block,当自定义tableFooterView计算出高度后,才将自定义控件赋值给TableView

  • 自定义控件中定义一个block成员变量

技术分享

  • 计算出高度后执行block

技术分享

  • 给TableView添加自定义控件时,给block赋值,block中设置自己的tableFooterView

技术分享

最终效果:

技术分享

iOS开发中的错误整理,百思项目'我的'模块,tableFooterViewHeight的问题.提醒自己对KVO和Block的运用欠缺

标签:

原文地址:http://www.cnblogs.com/gchlcc/p/5545096.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!