访问不同类中的类对象

时间:2015-11-13 07:26:09

标签: class swift2

总共有3个班级。

  1. 在第一堂课中,它会执行所有init来管理字符串。
  2. 在第二个类中,它为第一个类创建一个类对象数组。
  3. 在第三节课中,它将访问存储在第二节课中的数据。 (这是我需要知道的地方。)
  4. FirstClass.swift

    class Person{
        var name : String
        var description : String
    
        init(name: String, description: String){
            self.name = name
            self.description = description
        }
    

    SecondClass.swift

    class StoreData: UIViewController {
    
        var personList = [Person]()
    
        override func viewDidLoad() {
            super.viewDidLoad()
            self.personList.append(Person(name: "John", description: "123"))
            self.personList.append(Person(name: "Mary", description: "456"))
        }
    

    ThirdClass.swift

    所以在这个类中,我需要访问存储在SecondClass.swift中的数据。我说我要存储在一个字符串数组中。我想提取var names = personList[0].name我该怎么做?

1 个答案:

答案 0 :(得分:0)

在你的情况下使其工作的最简单方法是这样的:

class StoreData: UIViewController {
    static var sharedData = StoreData()
    var personList = [Person]()

    override func viewDidLoad() {
        super.viewDidLoad()
        self.personList.append(Person(name: "John", description: "123"))
        self.personList.append(Person(name: "Mary", description: "456"))
    }
}

class ThirdClass {

    func someFunc() {
        let person1 = StoreData.sharedData.personList[0]
        print(person1)
    }
}

但这不是最好的方式,但你不能解释你需要什么。希望您理解,此代码可以从StoreData生成单例。这对你来说很有用。