在Swift中初始化我的应用程序的基类的位置

Ris*_*shi 1 ios swift

我有一个名为Homeclass的类,它是我的app的父类.现在,我想在某个地方初始化这个类,这样我就可以从任何地方访问类中的所有内容.该应用程序的起点是RootViewController.我应该在起点初始化应用程序吗?如果是,我应该怎么做才能从应用程序的任何地方访问它?

Tom*_*wer 7

根据我上面的评论,在AppDelegate类上使用Home类型设置一个属性,在application:didFinishLaunchingWithOptions中初始化它.现在,您可以通过sharedApplication.delegate访问此home实例.

在AppDelegate.swift中:

import UIKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?

    var myHome: Home?


    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: NSDictionary?) -> Bool {
        // Override point for customization after application launch.

        self.myHome = Home()

        return true
    }
Run Code Online (Sandbox Code Playgroud)

然后在其他一些类中访问它:

let delegate = UIApplication.sharedApplication().delegate as AppDelegate
var home = delegate.myHome
Run Code Online (Sandbox Code Playgroud)