swift kvc赋值
Posted we-smile
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift kvc赋值相关的知识,希望对你有一定的参考价值。
1定义模型属性的时候,如果是对象,通常都是可选的(在需要的时候创建,避免写构造函数,简化代码)
2如果是基本数据类型,不能设置成可选的,而且要设置初始值,否则KVC会崩溃
3使用KVC方法前,需要先调用super.init(),保证对象实例化完成
4必须在类的前面添加@objcMembers(或者在每一个属性前面添加@objc),否则KVC会crash
import UIKit
@objcMembers class Person: NSObject {
var name: String?
//基本数据类型必须是必选的,而且需要设置默认值
var age: Int = 0
init(dict: [String : AnyObject]) {
super.init()
setValuesForKeys(dict)
}
}
以上是关于swift kvc赋值的主要内容,如果未能解决你的问题,请参考以下文章
Swift - 反射(Reflection)的介绍与使用样例(附KVC介绍)