iOS开发UI篇—常见的项目文件介绍

一、项目文件结构示意图

二、文件介绍

1.products目录:主要用于mac电脑开发的可运行文件。ios开发用不到这个文件

2.frameworks目录主要用来放依赖的框架

3.test目录是用来做单元測试的

4.经常使用的目录(项目名称目录)

(1)XXXinfo.plist文件(在该项目中为 01-常见文件-Info.plist)

1)简单说明

是配置文件。该文件对project做一些执行期的配置,很重要。不能删除。

在旧版本号xcode创建的project中,这个配置文件的名字就叫做info.plist。

注意:因此在加载自己准备的plist文件的时候,不要以info命名。

2)配置文件的属性介绍:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDkyNzMxMQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

bundledisplay name:

应用程序显示名称。

假设要改动桌面上显示的文件名,仅仅要改动此处就能够了。

(须要先删除原始的程序,然后清空一下project,由于程序有缓存)

bundleidentifer:

唯一标识符(唯一的标识着一个应用程序,为了保证程序的唯一性,通常把域名倒过来写)

Bundle versions string, short和bundleversions

两个都用来表示应用程序的版本号。前面的版本号是正式的版本号,后面的为内部版本号。即公司内部开发的版本号。要求提示:上传app的时候。后面更新的版本号必须比之前的版本号大。

mainstoryboard file base name

最基本的storyboard

有两种方式改动plist配置文件:

第一种方式即在如图所看到的的界面对配置信息进行改动。

另外一种方式直接点击project,能够通过可视化界面进行设置。

补充说明:

a.应用程序支持的旋转方向。

四个方向。垂直-不支持颠倒-左-右(最多仅仅支持三个方向)

b.plist文件打开之后是xml文件。和字典一样。是通过键值对的形式来保存数据。在xml文件里。加入了CF前缀

(2)pch文件(在该项目中为
 01-常见文件-Prefix.pch)

1)简单说明

保存的内容可以被项目中的其它全部原文件共享。

通常情况下宏文件的处理,须要加入import导入头文件。以后能够把这个宏定义在这个文件里。不再须要导入头文件

2)应用场景:

1.用来定义一些全局的宏。

2.用来导入一些全局都能用到的头文件。

3.用来自己定义NSlog,非常消耗资源。(差点儿是最消耗的)。在公布的时候要把全部的打印都去掉。

(补充:在开发中。分为两个阶段。

一是开发调试阶段,须要打印log调试程序。假设程序处于调试阶段。系统会为我们定义一个名称叫做DEBUG的宏。

二是公布阶段:不须要打印log,由于log非常占用资源,而且用户看不懂log,假设程序处理公布阶段,会去除这个宏。

难道在公布的时候要一个一个把NSlog都凝视掉?

然后在开发第二版。第三版的时候,又要把全部凝视掉的NSlog都打开?

对于这个问题。在.pch文件里自己定义NSlog就能够非常好的解决。

3)自己定义NSlog

在做开发的时候能够先打开pch文件,看看公司中有没有自己定义NSlog。

#import <Availability.h>

#ifndef __IPHONE_5_0

#warning "This project usesfeatures only available in iOS SDK 5.0 and later."

#endif

/************__OBJC__BEGIN************/

// 里面的全部内容仅仅能用到.m文件里或者.mm

#ifdef __OBJC__

#import <UIKit/UIKit.h>

#import <Foundation/Foundation.h>

#import "TXPerson.h"

#ifdef DEBUG  // 调试阶段

#define TXLog(...)NSLog(__VA_ARGS__)

#else // 公布阶段

#define TXLog(...)

#endif

#define ABC 10

#endif

/************__OBJC__END************/

/**

*  外面的全部东西,整个项目共享

*/

#define Name 10

/**

pch文件的作用:

1.存放一些全局的宏(整个项目中都用得上的宏)

2.用来包括一些所有的头文件(整个项目中都用得上的头文件)

3.能自己主动打开或者关闭日志输出功能

*/

说明:…指接收可变參数

补充:

_OBJC_这个宏,在全部的.m和.mm文件里,都默认包括了这个宏,就默认会编译以下那两句

条件编译语句,假设有这个宏,就编译以下的语句。

#import <UIKit/UIKit.h>

#import <Foundation/Foundation.h>

假设这个全局的头文件或者宏。仅仅须要在.m或.mm文件里使用,请把该文件或宏写到#ifdef_ODBC_中用。

注意点:建议写在条件编译里面(注意#endif)

infoplist.strings的文件。跟info.plist文件的本地化相关

iOS开发UI篇章 15-项目中的常见文件的更多相关文章

  1. iOS之多控制器管理--项目中的常见文件

    项目中的常见文件 内容大纲: 1.LaunchScreen 2.info.plist文件 3.pch文件 1.LaunchScreen xcode5和xcode6区别 1.xcode6没有Framew ...

  2. ios开发UI篇—在ImageView中添加按钮以及Tag的参数说明

    ios开发UI篇—在ImageView中添加按钮以及Tag的参数说明 一.tag参数 一个视图通常都只有一个父视图,多个子视图,在开发中可以通过使用子视图的tag来取出对应的子视图.方法为Viewwi ...

  3. iOS开发UI篇—在UIImageView中添加按钮以及Tag的参数说明

    ios开发UI篇—在ImageView中添加按钮以及Tag的参数说明 一.tag参数 一个视图通常都只有一个父视图,多个子视图,在开发中可以通过使用子视图的tag来取出对应的子视图.方法为Viewwi ...

  4. iOS 项目中的常见文件

    iOS的笔记-项目中的常见文件   新建一个项目之后,有那么多的文件,下面介绍一下主要的几个. 1.文件名 (1)AppDelegate UIApplication的代理,app收到干扰的时候,进行处 ...

  5. Xcode 6.4项目中的常见文件(info.plist)

    Xcode 6.4项目中的常见文件(info.plist) 代码中获取 info.plist[NSBundle mainBundle] infoDictionary]; Bundle display ...

  6. iOS开发多线程在实际项目中的运用

    实际项目开发中为了能够给用户更好的体验,有些延时操作我们都会放在子线程中进行. 今天我们就来聊聊多线程在实际项目中的运用. 我们先来看看多线程的基础知识: 1.多线程的原理: 同一时间,CPU只能处理 ...

  7. iOS开发小技巧--微博项目中的键盘工具条

    微博项目中的键盘工具条 项目中的键盘工具条不能使用inputAccessoryView,因为inputAccessoryView不能实现键盘隐藏的时候,工具条还显示在眼前,如图: 所以,果断决定将工具 ...

  8. 【iOS开发】在ARC项目中使用非ARC文件

    ARC的出现应该说是开发者的一大福利,苹果是推荐使用的,但是因为之前没有ARC机制,好多比较好的类库都是使用的非ARC,或是有些大牛还是不喜欢用ARC,封装的类也是非ARC的,想要在自己的ARC项目中 ...

  9. iOS开发UI篇—在UItableview中实现加载更多功能

    一.实现效果 点击加载更多按钮,出现一个加载图示,三秒钟后添加两条新的数据.                      二.实现代码和说明 当在页面(视图部分)点击加载更多按钮的时候,主页面(主控制器 ...

随机推荐

  1. 集合类List、Set、Map的区别、联系和遍历方式

    说集合之前,先说说数组和集合: 1.数组长度是固定的,当超过容量后会在内存中重新创建一个原来数组1.5倍长度的新数组,再把元素存进去:数组既可以存储基本数据类型,又可以存储引用数据类型. 2.集合长度 ...

  2. CSS font-family 字体介绍,\5b8b\4f53 表示“宋体”

    font-family采用一种"回退"的形式来保存字体,可以写若干种字体.当第一种字体浏览器不支持的时候,会找第二种字体,一次类推. font-family字体分为两类: 特殊字体 ...

  3. Java并发编程、多线程、线程池…

    <实战java高并发程序设计>源码整理https://github.com/petercao/concurrent-programming/blob/master/README.md Ja ...

  4. CSS3&HTML5各浏览器支持情况一览表

    http://fmbip.com/ CSS3性质(CSS3 Properties) 平台 MAC WIN 浏览器 CHROME FIREFOX OPERA SAFARI CHROME FIREFOX ...

  5. MyBatis使用示例

    下面是一个简单的MyBatis使用DEMO. 整体结构 整体代码大致如下: POM依赖 需要引用两个jar包,一个是mybatis,另一个是mysql-connector-java,如果是maven工 ...

  6. 【BZOJ】4361: isn

    题解 可以想一下保留一个长度为k的不降序列方案数是\(f[k] (n - k)!\) \(f[k]\)是有多少个长度为k的不降序列 我们去掉不合法的,一定是前一次操作的时候有一个长度为\(k + 1\ ...

  7. 2018年湘潭大学程序设计竞赛 F - maze

    把点抽出来 跑个最短路就好啦. #include<bits/stdc++.h> #define LL long long #define pii pair<int,int> # ...

  8. Linux 正则

    一.引用自:https://www.cnblogs.com/chensiqiqi/p/6285060.html 二.grep示例 grep -i   忽略大小写 grep -w 精准匹配 grep - ...

  9. mysql排序数据

    一:order by的普通使用 1.介绍 当使用SELECT语句查询表中的数据时,结果集不按任何顺序进行排序.要对结果集进行排序,请使用ORDER BY子句. ORDER BY子句允许: 对单个列或多 ...

  10. 几种常见类的使用(System,Runtime,Math,Date,Calendar,Random)

    一:System 1.介绍 System:类中的方法和属性都是静态的. out:标准输出,默认是控制台. in:标准输入,默认是键盘. 2.properties 获取系统属性信息:Properties ...