[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件

时间:2020-12-06 22:16:34
A.项目中的常见文件
1.单元测试Test
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
2.Frameworks(xCode6 创建的SingleView Project没有)
依赖框架
 
3.Products
打包好的文件
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
4. projectname-Info.plist
全局配置文件
所以最好其他的plist文件不要带有Info字眼
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
(1)更改项目名
a.修改Bundle display name
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
b.clean
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
c.模拟器删除app,重新生成
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
(2)Bundle Identifier
App唯一标识符
 
(3)stroyboard入口:Main storyboard file base name
 
(4)app支持的屏幕方向
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
5.pch文件
projectname-Prefix.pch
pch头文件中的内容可以被其他文件共享
(1)xCode6 创建pch文件
a.创建一个PCH
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
 
b.配置pch到预编译
注意要写对pch文件的路径
[iOS基础控件 - 6.10.4] 项目启动原理 项目中的文件
 
 
 
(2)pch的作用
a.存放全局宏 #define
 #define A 1
#define B 2
 
b.全局import #import
 #import "myhead.h"
 
c.仅让所有OC项目中的.m文件import foundation和UIKit库
防止其他语言(如C)错误引入
 #ifdef __OBJC__

 #import <Foundation/Foundation.h>
#import <UIKit/UIKit.h> #endif
 
d.调试NSLog优化
系统在调试阶段会配置一个DEBUG宏
 #ifdef __OBJC__

 #import <Foundation/Foundation.h>
#import <UIKit/UIKit.h> #ifdef DEBUG
#define MyNSLog(...) NSLog(__VA_ARGS__)
#else
#define MyNSLog(...)
#endif #endif
 
注意”__VA_ARGS__”前后是两个下划线
     配置之后,使用MyNSLog函数来打印测试信息,在app完成release的版本,MyNSLog会自动失效
     MyNSLog(@"测试 %d - %d", A, B);
out:
2014-12-17 13:22:33.888 DatePicker[20702:1696549] 测试 1 - 2