将 UITabBar 放置在 UITabBarController 中的屏幕顶部
Posted
技术标签:
【中文标题】将 UITabBar 放置在 UITabBarController 中的屏幕顶部【英文标题】:Placing UITabBar on top of the screen within UITabBarController 【发布时间】:2013-11-15 00:35:11 【问题描述】:我将 UITabBarController 子类化以允许自定义 UITabBar 具有粉红色背景并位于屏幕顶部。问题是,当我将 UITabBar 的框架设置为顶部时,它会移动并正常工作,但屏幕底部似乎有一个不可见的覆盖层,阻止了用户与底部元素的任何交互。另外,我认为 Apple 建议不要直接从 UITabBarController 中操作 UITabBar。最好的解决方案是什么?下面是用于将标签栏移动到顶部的代码,在我的 CustomTabBarController 子类的 viewDidLoad 方法中:
CGRect frame = CGRectMake(0.0, 0.0, self.view.bounds.size.width, self.tabBar.bounds.size.height + 15);
[self.tabBar setFrame:frame];
【问题讨论】:
【参考方案1】:很有可能将标签栏放在屏幕顶部。这是一个 github 项目的链接,该项目确实将标签栏放在屏幕顶部。 https://github.com/hollance/MHTabBarController
查看项目,如果您需要更多帮助,请告诉我。
【讨论】:
这个项目使用自定义代码完成了这一切,顶部有 UIButtons 和嵌入式视图控制器(不使用标签栏)。但该实现看起来提供了预期的效果。以上是关于将 UITabBar 放置在 UITabBarController 中的屏幕顶部的主要内容,如果未能解决你的问题,请参考以下文章
UIStoryboards、UITableViewControllers 和 UIToolbars:无法将工具栏放置在我想要的位置