iOS:使用外部参数在对象类中设置

时间:2015-02-09 15:08:47

标签: ios oop swift nsobject

我有这个对象类

class City {

    var name:String
    init(name: String) {
        self.name = name
    }

    var video:String?
    var description:String?
    var image_array:NSArray?
}

在这个类中有一个名为image_array的属性,我想为它分配一个NSArray,你可以阅读。 但在这种情况下,我必须在此属性传递String,我应该将其转换为数组

示例:

The string is "img1.jpg,img2.jpg,img3.jpg"

然后我用

let fullNameArray = fullName.componentsSeparatedByString(",")

我获得NSArray

那么将String传递给image_array City内部{{1}}的setter的方法是什么? 然后在setter内部将其转换为数组......我希望它清楚。

2 个答案:

答案 0 :(得分:2)

你不会,你需要1.将它转换为数组然后传递它,或2.添加一个不同的方法,它接受一个字符串,转换它然后调用数组设置器。

选项1.更好,因为它维护一个理智的界面,并且不会使用来自其他类的crud来污染类接口。

答案 1 :(得分:0)

如果你真的想这样做,就可以从数组中使用

编写字符串
var myString:String = array.description.stringByTrimmingCharactersInSet(NSCharacterSet(charactersInString: "[]"))

并从字符串

返回数组
var array:[String] = myString.componentsSeparatedByString(", ") //dont forget space character