10

我在我的 uitableviewcontroller 中设置了一个 UIRefreshControl,但是导航栏和 uitableview 的顶部之间有很大的差距。玩“调整滚动视图插图”并没有帮助,因为控制器将在启动时放置在导航栏的下方。我可以禁用“顶部栏下”,但我希望在滚动时拥有这种能力。在调试器中四处寻找时,我注意到 tableView.contentInset 在不同时间偏移了 82 个点,这与人们谈论的关于新 ios7 bar 行为的通常的 20/64 pt 偏移量不同。这里发生了什么?

4

1 回答 1

24

在四处寻找解决方案的同时找到了解决方案;希望它能为某人节省几个小时!

我需要在之后实例化我的 UIRefreshControl viewDidLoad:,或者attributedTitle至少在此之后避免在代码中设置它(例如,如果我在 IB 中启用了表的刷新)。在 viewDidLoad 中设置字符串:弄乱了 iOS 的 control+tableview 布局,但viewWillAppear:在几何体设置之后或之后就可以了。我认为 82 点是 UIRefreshControl 的高度。在 IB 中设置刷新标题也可以避免这个问题,除了我在代码中这样做是因为我不想一直在 IB 中对我的每个表启用刷新。

于 2013-10-08T06:55:09.150 回答