iPad/iOS:管理多个全屏视图?

Posted

技术标签:

【中文标题】iPad/iOS:管理多个全屏视图?【英文标题】:iPad/iOS: Managing multiple full screen views? 【发布时间】:2011-09-25 17:41:07 【问题描述】:

我的应用需要在几个全屏视图之间切换。这些视图由自定义叠加菜单中的按钮切换。

没有可见的标签栏或导航栏。视图之间的过渡可能是动画的,也可能不是动画的。

正如我所见,我可以使用单个 UIViewController 并换出子视图以获得所需的效果,或者使用多个 UIViewController 并使用一个 Apple 的容器(例如导航控制器、标签栏控制器等),隐藏导航栏/标签栏和以编程方式切换“选项卡”或推送/弹出控制器。我想的第三个选项是模态显示每个新视图,但这感觉不对。

没有访问视图的“顺序”,所以我猜导航控制器方法不会真正有意义。

这两种方法有什么主要缺点吗?你有什么其他的建议?如果我在导航和标签栏控制器上隐藏导航栏或标签栏,Apple 会拒绝该应用吗?

提前感谢您提供的任何建议。

【问题讨论】:

【参考方案1】:

我不会使用UINavigationController、模态窗口或UITabBarController。后者有一些可能,但一般使用太笨拙,不适合。

相反,请尝试在窗口上使用setRootViewController:,因为与其他方法相比,这种方法相当灵活且开销更少。

在多个UIViewController 子类或UIView 交换之间进行选择取决于您的应用程序的总体运行方式。 UIView 喜欢独立,并限制与控制器的通信,但非常适合更多面向显示的内容。

【讨论】:

这是个好主意。然而,随着项目需求的变化,我最终选择了模态视图。

以上是关于iPad/iOS:管理多个全屏视图?的主要内容,如果未能解决你的问题,请参考以下文章

带有 Nativescript 的滚动视图中的多个全屏

我可以在 iPhone 上同时显示多个全屏 OpenGL 视图 (EAGLView) 吗?

如何优化多个全屏透明 iPhone OpenGL ES 图层的绘制?

MVVM + WPF - 为具有多个视图的 ViewModel 设计

Objective-C 管理多个视图控制器

在集合视图单元格 Swift 中管理多个进度视图