![enter image description here](https://istack.dev59.com/zN664.webp)
我尝试过的解决方案:
将UITabBarController放在一个ViewController中,并使用最大尺寸的Container View,在底部布局指南的上方49pt放置自定义视图:
问题: UITabBarController嵌入的视图控制器中底部约束的任何内容都不会显示,因为它们被隐藏在自定义布局后面。我尝试了在UITabBarController中覆盖
size forChildContentContainer
、更新底部布局指南等方法,但都没有成功。 我需要调整UITabBarController容器视图的框架大小。再次尝试#1,但通过增大UITabBar的尺寸来解决内容隐藏在其后的问题,然后使用每个TabBarItem上的ImageInset将其下移,并在UITabBar的顶部添加自定义视图。没有非常好地工作。有时我想隐藏我的自定义视图。
将UITabBarController作为根控制器,每个子控制器都是一个带有Container View和我的自定义视图的ViewController:
重写UITabBarController的UITabBar属性,并返回我的自定义UITabBar(用xib填充),其中包含UITabBar +我的自定义视图。问题:可能是所有尝试中最令人沮丧的。如果您使用class MyCustomTabBar:UITabBar {}
的实例覆盖该属性,则不会显示任何选项卡!是的,我将myCustomTabBar
的委托设置为self
。
倾向于#3,但正在寻找更好的解决方案。