• ios开发注意事项小总结


    一、LaunchScreen

    LaunchScreen产生原因:代替之前的启动图片
    好处:
    1.可以展示更多的东西
    2.可以只需要出一个尺寸的图片。

    启动图片的优先级
    启动图片 < LaunchScreen.xib

    模拟器尺寸不对
    程序中碰见模拟器尺寸不对,马上去找启动图片,默认模拟器的尺寸由启动图片决定。

    二、程序启动原理
    1.创建UIApplication对象
    2.创建AppDelegate对象,并且成为UIApplication对象代理属性
    3.开启主允许循环:目的让程序一直跑起来
    4.加载info.plist文件,判断下info.plist文件里面有木有指定main.storyboard,如果指定,就会去加载main.storyboard

    main.storyboard底层实现
    1.初始化窗口
    2.加载storyboard文件,并且创建箭头指向的控制器
    3.把新创建的控制器作为窗口的跟控制器,让窗口现实

    三、如何加载storyboard文件
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];

    // instantiateInitialViewController:默认加载箭头指向的控制器

    [storyboard instantiateInitialViewController];

    四、思想
    封装思想:如果以后项目中,有相同的功能,抽取一个类,封装好
    如何封装类:做到自己的事情全部交给自己管理。
    抽方法:一般一个功能就抽一个方法,以后开发中如果有相同的功能,找到对应的类就能找到功能

    五、苹果模型
    Item:就是苹果的模型命名规范
    tabBarItem:决定着tabBars上按钮的内容
    如果通过模型设置控件的文字颜色,只能通过文本属性(富文本:颜色,字体,空心,阴影,图文混排)

    六、在ios7之后,默认会把UITabBar上面的按钮图片渲染成蓝色,一般需要告诉图片保持最原始的图片,或者在image.xcassest里面设置render模式

    七、类的加载和初始化
    什么时候调用:程序一启动的时候就会把所有的类加载进内存
    作用:加载类的时候调用

    • (void)load
      {

    }

    // 什么调用:当第一次使用这个类或者子类的时候调用
    // 作用:初始化类

    • (void)initialize
      {

    }

    八、appearance方法
    appearance只要一个类遵守UIAppearance,就能获取全局的外观,UIView都可以获取所有的外观

    获取所有的tabBarItem外观标识
    UITabBarItem *item = [UITabBarItem appearance];

    self -> CZTabBarController
    获取当前这个类下面的所有tabBarItem
    UITabBarItem *item = [UITabBarItem appearanceWhenContainedIn:self, nil]

    九、利用KVC可以把系统readonly的属性修改
    kvc可以快速的将字典数据转化为模型数据,键值需要对应

    十、UITabBar的items属性
    self.items UITabBarItem模型,有多少个子控制器就有多少个UITabBarItem模型

    十一:sizeToFit:默认会根据按钮的背景图片或者image和文字计算出按钮的最合适的尺寸

    十二:模型设计思想
    id:能调用任何对象的get,set方法,不能帮我们检查错误
    类方法:需要使用self创建对象

  • 相关阅读:
    mysql怎么在已建好的表中添加自增序列
    IDEA报错: Invalid bound statement (not found): com.test.mapper.UserMapper.selectByPrimaryKey(转发:https://www.cnblogs.com/woshimrf/p/5138726.html)
    Windows下重置MySQL密码(最开始是因为Access denied for user 'root'@'localhost'这个原因,无法登陆 'root'@'localhost')
    数组逆转
    选择、插入、冒泡排序
    线性单链表
    顺序队列
    栈的应用----表达式求值
    顺序表的应用---若瑟夫问题
    顺序栈
  • 原文地址:https://www.cnblogs.com/Ewenblog/p/10783717.html
Copyright © 2020-2023  润新知