IOS 学习笔记

来源:互联网 发布:μtorrent mac 编辑:程序博客网 时间:2024/05/02 04:21

通过xib加载控制器的View

  • initWithNibName:如果指定了特定的名称的xib,会去加载指定的xib
  • 如果指定是nil
    1. 判断有没有当前控制器相同名称的xib,如果有自动加载跟它相同名称的xib(例如:控制器的名称为BAIViewController那么会首先自动寻找BAIViewController.xib)
    2. 如果没有跟它相同的名称的XIB。自动加载跟它相同名称并且是去掉Controller(BAIView.xib)

模型setValuesForKeysWithDictionary (setValue:forKeyPath:)实现原理

  • 先查看有没有对应key值得set方法,如果有set方法,就会调用set方法,给对应的属性赋值。
  • 如果没有set方法,就会去查看有没有跟key值相同并且带有下划线的成员属性,如果有的话,就给带有下划线的成员属性赋值。
  • 如果没有跟key值相同并且带有下划线的成员属性,还会去找有没有跟key值相同名称的成员属性,如果有就给它赋值。
  • 如果没有直接报错。
0 0