iOS 一一 项目中的常见文件

一、 项目中常见的文件--LaunchScreen

Xcode5 和 Xcode 7的区别:

  1.Xcode5有个FrameWorks,存放框架,

    Xcode7自动导入框架,用到什么框架时,自动导入框架,


  2.Xcode7当中多了一个LaunchScreen.storyboard,用来设置启动页面,

   如果没有设置启动页面,默认它的屏幕的大小是4s大小。


    LaunchScreen底层实现:把LaunchScreen.storyboard当中内容,生成一张图片。

  3. info.plist,名称发生了变化,而且放到了外面。


  4.xcode7当中没有了PCH文件。


LaunchScreen是应用程序的启动页

LaunchScreen原理:

1. 会自动加载LaunchScreen是因为Target当中,指定了Launch Screen file.



2. 如果没有设置启动图,模拟器默认的尺 是4s的尺.(可以打印屏幕尺 验证.) 



3. 

它的底层实现其实把LaunchScreen上的东西,生成了一张图片,然后把这张图片设为程序的启动图片.

可以进入沙盒当中查看

查看方法,找到应用程序根目录.

获取方法:NSLog(@"%@",NSHomeDirectory());

打印出来,后前往文件夹.找到Library->Caches->Snapshots目录下面.最后一层就是程序自动生成的图片.



二、info.plist文件

info.plist文件的作用:    info.plist当中保存着整个应用当中基本的配置.它是一个字典.查看它的类型.

info.plist常见key值 :

Bundle Name:应用程序的名称.

Bundle version string,short:应用程序的版本.在开发当中都是迭代开发.苹果要求下一次提交的版本必须得要比上一次提交的版本要高.

Bundle Version:应用程序编译的版本.

Bundle identifier:应用程序标识符.保证应用程序的唯一性,




三、PCH文件(一般以工程名)

1. PCH文件的作用: 

 1.pch存放公用的宏

2.pch存放公用的头文件,分类的头文件

3.pch可以自定义Log


2. 只要在pch当中定义的东西,会被整个应用程序共享.PCH它是个预编译文件,要告诉系统要提前编译它.要去做 些配置.Buld Setting当中找perfix找到Precomplie prefix Headeryes. 



然后设置Prefix Header的路径配置,路径从根层开始.



3. PCH文件的原理: 会把pch文件中的所有内容导入到每个文件中去

4. 自定义Log

// 判断是否是obj文件
#ifdef __OBJC__

// 宏替换
#define ScreenW [UIScreen mainScreen].bounds.size.width
#import "UIView+frame.h"

// 如果是调试阶段
#ifdef DEBUG
// 不注释ZYLog
#define ZYLog(...) NSLog(__VA_ARGS__)

#else   // 如果不是调试阶段
// 隐藏ZYLog
#define ZYLog(...)

#endif

#endif

5. PCH文件注意点:

注意PCH会把它当中的所有内容导入到工程当中所有的文件.

但如果工程当中有C语言文件的时候,它也是会把它给导入到C语言的文件当中.如果这样的话, 就会发生错误.


解决办法:每一个OC文件都会定义一个__OBJC__宏,只要判断有没有定义这样一个宏,

就能看出是不是C语言的文件,如果没有定义这样的宏, 那就不需要导入这些东西.就不会报错.




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

white camel

感谢支持~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值