UI 多控制器
博客专区 > DevShaw 的博客 > 博客详情
UI 多控制器
DevShaw 发表于2年前
UI 多控制器
  • 发表于 2年前
  • 阅读 28
  • 收藏 0
  • 点赞 1
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

info plist

-products  产品目录
-supporting Files  资源文件放置
- info.plist 项目的配置文件
  • Localization native development region本地化

  • Executable File 可执行文件路径 ***千万不要改

  • Bundle identifier 应用唯一标识

  • infoDictionary version plist文件的版本号

  • bundle name 安装的时候创建的文件夹名称

  • bundle display 安装到桌面的APP名字

  • bundle OS Type code 不要改

  • bundle versions string,short itunes上的版本号

  • bundle version 上传到 APP store 需要用的版本号 比之前的版本号要高

  • launch screen interface file base name 启动界面的配置

  • main storyboard file base name 主storyboard

  • required device capabilities CPU框架

    TARGTS 和 info plist 对应

    学习新东西要弄清这个东西是用来干什么的

Pch文件的作用

-让项目中所有的文件都会导入里面的内容
-可以导入公共的头文件,网络工具类
-可以定义宏,访问路径
-绝对路径
    -$(SRCROOT)/工程名/文件名.pch
重新定义NSlog有什么作用:
#ifdef           DEBUG开发环境
    #define HMLog(...) NSLog(__VA__ARGS)
#else
    #Release     打包上线环境

注意 区分 OC 还是 C

#ifdef __OBJC__

#endif

UIapplication

- 代表整个应用程序,是一个单例的类
  • 在整个程序启动的时候,会创建一个 UIapplication对象,让他来管理 APP

  • 应用图标右上角的数字 **** 注意只能通过注册

程序生命周期

-程序启动时      
-程序进入后台
-程序后台到前台
-程序销毁
-内存警告

程序的启动过程

 -    main.m    C 语言程序的入口
 -    进入iPhone程序入口  UIapplicationMain
  • argc : argv数组的长度

  • argv : 数组的指针

  • principalClassName:UIApplication类

  • delegateClassName:就是 APPdelegate 类

  • 如果第三个参数为 nil, 先会去 info.plist去找NSPrincipaClass.还没有就用UIapplication

    • 为什么要有 APPdelegate ,让程序员在各个阶段做一些操作

UIwindow

  • 去掉main,就没有window了,必须手动代码创建

  • UIwindow是我们程序创建的第一个 view

  • 有了 UIwindow我们程序才能显示界面

  • 必须指定一个根控制器,也可以自己定义控制器

  • 在应用程序中有很多个window,键盘也是一个window,但是只有一个主window

  • 用 alloc 方式创建先找同名的 XIB 然后再找同名的去掉 controller 的 XIB

懒加载loadview

  • 控制器的根view是懒加载创建

  • loadview 的作用就是用懒加载的方式创建控制器的根view 显示的时候会调用loadview 方法

  • 通过 sb,xib 都会走 loadview 方法,并且界面上展示就是 xib/sb 上的内容

  • 代码 init 创建控制器,先找同名的 xib,再去找 controller 的 xib,如果没有创建一个空的控制器内部重写 loadview

  • super loadview 就是创建根view的,如果 super loadview 不写了,那么就自己创建一个 view, 给 self.view

  • 如果是从 xib/sb加载出来的, view 就是从 xib/sb加载出来的,如果代码创建,它就是一个空的

管理控制器的控制器

控制器的生命后期

-viewdidload        视图加载完成
-viewWillAppear     视图将要显示到界面
-viewDidAppear      视图已经显示到界面
-viewWillDisappear  视图将要消失
-viewDidDisappare   视图已经消失-用来销毁根 view
  • viewWillUnload 用来销毁subview 销毁子view

  • viewDidUnload

  • 在使用导航控制器的时候,在开发的时候一定要测试返回(上一个)控制器是否已经销毁



  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 6
博文 41
码字总数 26462
×
DevShaw
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: