UI 多控制器

info plist

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

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

  • Bundle identifier 应用惟一标识数组

  • infoDictionary version plist文件的版本号网络

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

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

  • bundle OS Type code 不要改ide

  • 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

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

相关文章
相关标签/搜索