美文网首页
小知识点二

小知识点二

作者: Andyzhao | 来源:发表于2015-10-12 23:40 被阅读63次

    一、利用KVC字典转模型实现原理:遍历字典中的所有key,去模型中查找有没有跟key相似的属性名。

    • 1.遍历出name这个key,去模型中查找有没有setName:方法,找到就直接调用,给模型的成员属性赋值。self.name = dict[@"name"]

    • 2.在去模型中查找有没有name这个属性名,如果找到,直接通过属性赋值 name = dict[@"name"]

    • 3.在去模型中查找有没有_name这个属性名,如果找到,直接通过属性赋值 _name = dict[@"name"]

    • 4.调用setValue:forUndefinedKey:报错。

    二 自定义键盘

        // inputView:用来自定义文本框的键盘
        _birthdayField.inputView = datePicker;
        
        // inputAccessoryView自定义键盘tabbar
        _birthdayField.inputAccessoryView = [UIButton buttonWithType:UIButtonTypeContactAdd];
    

    三、程序启动过程

    • main -》 UIApplicationMain -》 通知代理做事情

    UIApplicationMain底层实现:

    // principalClassName:描述UIApplication的类名字符串
    // delegateClassName:描述UIApplication代理的类名字符串
    
    int UIApplicationMain(int argc, char *argv[], NSString *principalClassName, NSString *delegateClassName);
    

    1.创建UIApplication对象
    2.创建UIApplication的代理对象,并且设置为UIApplication的代理.
    3.开启一个主运行循环,处理事件
    4.加载info.plist文件,判断是否有Main.storyboard,如果有就会去加载。
    有Main.storyboard才会执行第5步
    5.加载Main.storyboard,
    5.1 创建窗口
    5.2 加载Main.storyboard,初始化storyboard描述的控制器
    5.3 设置窗口的根控制器,并且显示窗口

    相关文章

      网友评论

          本文标题:小知识点二

          本文链接:https://www.haomeiwen.com/subject/phjocttx.html