在XCode 6中创建一个新项目不允许禁用Storyboard。您只能选择Swift或Objective-C,而不能使用Core Data。
我尝试删除情节提要,并从项目中删除主情节提要,然后从didFinishLaunching手动设置窗口
在AppDelegate中,我有以下内容:
class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow var testNavigationController: UINavigationController func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: NSDictionary?) -> Bool { testNavigationController = UINavigationController() var testViewController: UIViewController = UIViewController() self.testNavigationController.pushViewController(testViewController, animated: false) self.window = UIWindow(frame: UIScreen.mainScreen().bounds) self.window.rootViewController = testNavigationController self.window.backgroundColor = UIColor.whiteColor() self.window.makeKeyAndVisible() return true } }
但是,XCode给我一个错误:
类“ AppDelegate”没有初始化程序
有人成功吗?
您必须将window和testNavigationController变量标记为可选:
window
testNavigationController
var window : UIWindow? var testNavigationController : UINavigationController?
Swift类要求在实例化期间初始化非可选属性:
类和结构必须在创建该类或结构的实例时将其所有存储的属性设置为适当的初始值。存储的属性不能处于不确定状态。 可选类型的属性会自动使用nil值进行初始化,这表明该属性在初始化过程中故意有“没有值”的意图。
类和结构必须在创建该类或结构的实例时将其所有存储的属性设置为适当的初始值。存储的属性不能处于不确定状态。
可选类型的属性会自动使用nil值进行初始化,这表明该属性在初始化过程中故意有“没有值”的意图。
使用可选变量时,请记住用来将它们解包!,例如:
!
self.window!.backgroundColor = UIColor.whiteColor();