ios - 如何在 iPhone X 中更改标签栏的高度
问题描述
我有一个以前在 2014 年设计的应用程序。现在我必须使应用程序设计与 iPhone X 兼容。
当我在 iPhone X 模拟器上运行该应用程序时,除了标签栏外,一切正常。iPhone X 模拟器中的标签栏高度增加。
我知道基本的安全区域指南,但现在我不填充顶部和底部的空白区域,我只是显示标准标签栏,因为它显示在其他 iPhone 上。
标签栏以编程方式添加,因此我尝试更改其高度,如下所示
tabBarController = [[UITabBarController alloc] initWithNibName:nil bundle:nil];
self.tabBarController.viewControllers = [[NSArray alloc] initWithObjects:trailsNavController,mapNavController, gpsNavController,infoNavController, signUpNavController, nil];
self.tabBarController.delegate = self;
self.tabBarController.tabBar.frame = CGRectMake(self.tabBarController.tabBar.frame.origin.x, self.tabBarController.tabBar.frame.origin.y, self.tabBarController.tabBar.frame.size.width, 40);
self.window.rootViewController = self.tabBarController;
当我添加启动画面时,应用程序设计会失真。
还有什么办法可以改变它的高度吗?任何帮助,将不胜感激。
解决方案
到目前为止,我知道的唯一解决方案是引入自动布局。
推荐阅读
- jquery - 通过jquery加载名称中带有变音符号的文件
- javascript - 用户数据未从查询调用返回任何内容
- wordpress - 更新帖子元 - 检查值是否与以前相同
- d3.js - 将日期用作数字,但在 UI 中将它们格式化为日期
- microsoft-graph-api - Microsoft Teams Graph API - 请求中的绑定属性名称所有者无效
- ruby-on-rails - 为什么 rubocop vaidates 排除的目录?
- reactjs - 如何在不使用 npm 的情况下安装 reactJs 模块/包?
- reactjs - 没有返回行时如何在 Ag Grid 中添加占位符?
- vue.js - 不同页面上的 Vue.js 组件之间的通信
- javascript - 为什么我的代码行为不一致?没有随机化或任何东西