我是 Swift 初学者,请放轻松。我会在我的问题中具体说明。
我删除了 Storyboard(我想学习如何使用 Swift 以编程方式构建 UI)。
下面的代码放在 AppDelegate.swift 中
我在项目浏览器中也有 ViewController.swift。
首先,有没有办法使用除 UINavigationController 以外的任何东西......?或者有一个 UINavigationController 是必须的要求..?
如果不是必须的,我怎样才能将它引用到 ScrollView 之类的例子......?
第二,随着对 Apple 自己的指南的进一步研究,他们说我也可以使用 window?.isHidden = false
...使用前一行和 window 之间有区别吗?.makeKeyAndVisible()
..?
很抱歉,如果我的问题在编程上没有意义,就像我说的,我是初学者,但我决心理解为什么我要编写我编写或复制的代码。 谢谢。
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
window = UIWindow(frame: UIScreen.main.bounds)
window?.makeKeyAndVisible()
window?.rootViewController = UINavigationController (rootViewController: ViewController())
return true
}
...
}
最佳答案
一个窗口需要一个 View Controller 。它不一定是 UINavigation Controller ,但它确实需要是 View Controller 。并非所有应用程序都以导航 Controller 开头。事实上,您可以通过查看 Xcode 在新项目中为您提供的 Storyboard 自己看到这一点。它只是一个 ViewController。您可以改用 ScrollView 吗?如果您将 ScrollView (它是一个 UIView)放入 UIViewController,当然可以。
隐藏窗口只是让它出现和消失。使其成为关键窗口意味着它将成为接收事件的窗口。你可能认为它在 iOS 应用程序中并不重要,但 iOS 应用程序可以有多个窗口。在启动应用程序的情况下,最好定义可见的窗口并作为关键窗口,而不仅仅是可见的窗口。
关于ios - 以编程方式设置 root VC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44745163/