的iOS:二传手在一个对象类与外部参数
问题描述:
我有这样的对象类的iOS:二传手在一个对象类与外部参数
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
的设置方法是什么对象? 然后在setter中把它转换成一个数组......我希望它很清楚。
答
你不会,你需要1.将它转换成一个数组,然后传递它,或2.添加一个不同的方法,接受一个字符串,转换它,然后调用数组setter。
选项1更好,因为它保持了一个健全的界面,并且不会污染类别界面。
答
如果你真的想这样做,才能写出来自阵列字符串中使用
var myString:String = array.description.stringByTrimmingCharactersInSet(NSCharacterSet(charactersInString: "[]"))
,并从字符串
var array:[String] = myString.componentsSeparatedByString(", ") //dont forget space character
嗯,那好吧,你的事情,最好的解决方案中获得阵列回来这样是不要碰结构物体......好的 – CrazyDev 2015-02-09 21:10:30