[IOS]NSObject--用于传值

西门庆
2023-12-01

Document 1:
建立一个数据模型。

import UIKit

class Model: NSObject {
    var ClassName : String = ""
    var DescriptionName : String = ""
    init(ClassName : String, DescriptionName : String) {
        self.ClassName = ClassName
        self.DescriptionName = DescriptionName
    }
}

Document 2:
用D1里的数据模型把数据存储起来。

import UIKit
class DataArray: NSObject {
    var tempArray = [Model]()
    var dataArray : [Model] {
        get {
            return tempArray
        }
    }
    override init() {
        tempArray = [
            Model(ClassName: "Class1", DescriptionName: "Variable"),
            Model(ClassName: "Class2", DescriptionName: "Loop"),
            Model(ClassName: "Class3", DescriptionName: "Function"),
            Model(ClassName: "class4", DescriptionName: "class"),
            Model(ClassName: "class5", DescriptionName: "struct"),
            Model(ClassName: "class6", DescriptionName: "pointer")
        ]
    }
}

在project中的任何文件想要使用上面的数组内容就可以声明一个变量

var temp_dataArray = DataArray().dataArray

调用上述对象的值。

简单的说,这是一种方法可以用来在app中传递值。
但有一个问题没有解决,就是要如何把一个tableView里不同cell的内容传递给下一个viewcontroller。
一种方法是用代码来实现show viewcontroller。但比较麻烦。
一种方法是用storyboard来拉线,每个cell设定不同的文件,但这种方法比较麻烦,而且意义不大。
最后是构想,如果可以在tableview的 didSelectRowAtIndexPath 方法里,用一个变量表示下一个viewcontroller,就可以进行相应的传值。但目前还没想出如何设定这个变量。

 类似资料: