iOS 8启动图像文件 - 导航栏和状态栏

12
我正在使用Interface Builder制作iOS 8的启动图像文件。我想要的启动图像非常简单(与“设置”应用程序相同,我想)-顶部带有空的Grouped TableView的导航栏。没有标题等。
请注意,我通常不使用Interface Builder - 因此IB是完全新的东西。
我尝试通过将导航栏和表视图添加到视图中,然后设置约束来实现此目的。 约束(和颜色)运作良好,但是...
问题:启动图像全屏显示在状态栏上方。就像这样:
如何获得状态栏和导航栏?
正如我所说,我正在使用Xcode中选择添加启动屏幕时默认的“UIView”进行工作。因此没有导航控制器; 那是问题吗?
另外,UIView上有一些选项看起来像他们应该给我想要的效果:
我尝试了一些状态栏选项,但还没有完全解决。
我需要Inferred还是Default?
我看到启动图像(状态栏+导航栏)和实际运行的应用程序之间有一个小偏移量,我只是位置放错了吗?
“顶部栏”选项的用途是什么?
对于我希望的启动图像,我是否需要将TableView添加为子视图,还是可以在主UIView上使用背景颜色?我尝试过了,但是然后我得到状态栏/导航栏的颜色不匹配...
对于Interface Builder新手,如何创建一个复制“设置”应用程序的启动屏幕文件?
1个回答

19

如果您正在使用故事板文件,则可以将您的视图设置为导航控制器场景中的根视图。导航控制器的导航栏会自动定位在状态栏下方。

示例

不要忘记将导航控制器设置为初始视图控制器(通过在属性窗格中选中Is Initial View Controller

当您将导航控制器添加到故事板中时,导航控制器场景会自动添加一个表视图控制器作为嵌套控制器。

如果您想要将其替换为另一个控制器,则必须从故事板中删除表视图控制器,将您想要使用的控制器添加到故事板中,然后将其连接起来(通过从导航控制器到视图控制器进行命令+拖动,然后选择rootViewController outlet)

注意 启动画面故事板中的对象(视图控制器等)不应设置任何IBOutlets。这将导致错误。


1
谢谢,它完全满足了我的需求。我有几个问题:(1)使用故事板和单视图启动图像之间有什么区别(性能?)吗?(2)我假设所有的约束都正确设置了吗?(测试正常)。就像我说的,IB对我来说是新的,使用故事板的方法看起来又不同了;)(3)考虑到我想在启动画面中添加导航栏,这是一个“更好”,更正确的方法,比使用单个视图更好吗?从我的有限经验来看,手动添加导航栏似乎是一种繁琐的方法?干杯。 - Gavin Hope
1
(1)使用故事板和单视图之间不应该有明显的用户性能差异。(3)使用单个视图文件的问题在于,更难在文件本身中为视图设置控制器(处理大小等)。在故事板中设置控制器更容易,这使您可以使用仅一个界面定义文件委托自动调整大小等。这对于启动屏幕非常方便。 - Leon Lucardie
2
我得到了“启动屏幕可能没有连接”的错误。有人有解决方法吗? - sarunw
1
@sarunw 启动屏幕故事板不能在代码中实现实际的ViewController。它应该只是故事板文件,没有设置viewcontroller类或IBOutlets。 - Leon Lucardie
太好了!谢谢你! - Isaak Osipovich Dunayevsky
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接