1
我已经实现了一个UITabBar,根据UITabBarController观察的属性更改它的高度。UITabBar与内容视图重叠。如何访问内容视图以更新其框架?
当标签栏的高度增加时,我拨打电话sizeToFit
,然后拨打setNeedsLayout
和layoutIfNeeded
。在willLayoutSubviews
之内,我更改了内容视图的框架高度,我认为它是self.selectedViewController.view
,但是,更改不会保持不变,并且在某些时候该视图会恢复到屏幕高度。最终的结果是内容视图延伸过标签栏,标签栏与内容重叠。
但是,当我切换选项卡/视图控制器时,内容视图正确调整大小。我该如何纠正这个问题?
感谢您的建议,虽然我想你可能已经混为一谈两个想法。我不在代理方法中调用'layoutIfNeeded'。我在其他地方称我正在观察其他一些财产的变化。调用layoutIfNeeded时,使用自定义的'viewWillLayoutSubviews'方法不能正确调整内容视图的大小,但是,选择另一个选项卡项并通过'tabBarController:didSelectViewController'正确调整内容视图的大小 – Steals