iOS開發(fā)UI篇—常見的項目文件介紹 一、項目文件結(jié)構(gòu)示意圖
二、文件介紹 1.products文件夾:主要用于mac電腦開發(fā)的可執(zhí)行文件,ios開發(fā)用不到這個文件
2.frameworks文件夾主要用來放依賴的框架
3.test文件夾是用來做單元測試的
4.常用的文件夾(項目名稱文件夾)
(1)XXXinfo.plist文件(在該項目中為 01-常見文件-Info.plist)
1)簡單說明
是配置文件,該文件對工程做一些運行期的配置,非常重要,不能刪除。
在舊版本xcode創(chuàng)建的工程中,這個配置文件的名字就叫做info.plist。
注意:因此在載入自己準(zhǔn)備的plist文件的時候,不要以info命名。
2)配置文件的屬性介紹:
![]() bundle display name:
應(yīng)用程序顯示名稱。如果要修改桌面上顯示的文件名稱,只要修改此處就可以了。(需要先刪除原始的程序,然后清空一下工程,因為程序有緩存)
bundle identifer:
唯一標(biāo)識符(唯一的標(biāo)識著一個應(yīng)用程序,為了保證程序的唯一性,通常把域名倒過來寫)
Bundle versions string, short和bundle versions
兩個都用來表示應(yīng)用程序的版本,前面的版本是正式的版本,后面的為內(nèi)部版本,即公司內(nèi)部開發(fā)的版本。要求提示:上傳app的時候,后面更新的版本必須比之前的版本大。
main storyboard file base name
最主要的storyboard
有兩種方式修改plist配置文件:
第一種方式即在如圖所示的界面對配置信息進(jìn)行修改。
第二種方式直接點擊工程,可以通過可視化界面進(jìn)行設(shè)置。
![]() 補充說明:
a.應(yīng)用程序支持的旋轉(zhuǎn)方向。四個方向,垂直-不支持顛倒-左-右(最多只支持三個方向)
b.plist文件打開之后是xml文件。和字典一樣,是通過鍵值對的形式來保存數(shù)據(jù)。在xml文件中,添加了CF前綴
(2)pch文件(在該項目中為 01-常見文件-Prefix.pch)
1)簡單說明
保存的內(nèi)容能夠被項目中的其他所有原文件共享。
通常情況下宏文件的處理,需要添加import導(dǎo)入頭文件。以后可以把這個宏定義在這個文件中,不再需要導(dǎo)入頭文件
2)應(yīng)用場景:
1.用來定義一些全局的宏,
2.用來導(dǎo)入一些全局都能用到的頭文件。
3.用來自定義NSlog,很消耗資源。(幾乎是最消耗的),在發(fā)布的時候要把所有的打印都去掉。
(補充:在開發(fā)中,分為兩個階段。
一是開發(fā)調(diào)試階段,需要打印log調(diào)試程序,如果程序處于調(diào)試階段,系統(tǒng)會為我們定義一個名稱叫做DEBUG的宏。
二是發(fā)布階段:不需要打印log,因為log很占用資源,并且用戶看不懂log,如果程序處理發(fā)布階段,會去除這個宏。
難道在發(fā)布的時候要一個一個把NSlog都注釋掉?然后在開發(fā)第二版,第三版的時候,又要把所有注釋掉的NSlog都打開?
對于這個問題,在.pch文件中自定義NSlog就可以很好的解決。)
3)自定義NSlog
在做開發(fā)的時候可以先打開pch文件,看看公司中有沒有自定義NSlog。
1 // __OBJC__這個宏,在所有的.m和.mm文件中默認(rèn)就定義了這個宏 2 #ifdef __OBJC__ 3 // 如果這個全局的頭文件或者宏只需要在.m或者.mm文件中使用, 4 // 請把該頭文件或宏寫到#ifdef __OBJC__ 中 5 #import <UIKit/UIKit.h> 6 #import <Foundation/Foundation.h> 7 8 #ifdef DEBUG 9 #define NJLog(...) NSLog(__VA_ARGS__) 10 #else 11 #define NJLog(...) 12 #endif 13 14 #endif 說明:…指接收可變參數(shù) 補充:
_OBJC_這個宏,在所有的.m和.mm文件中,都默認(rèn)包含了這個宏,就默認(rèn)會編譯下面那兩句
條件編譯語句,如果有這個宏,就編譯下面的語句。
#import <UIKit/UIKit.h> #import <Foundation/Foundation.h> 如果這個全局的頭文件或者宏,只需要在.m或.mm文件中使用,請把該文件或宏寫到#ifdef_ODBC_中用。
注意點:建議寫在條件編譯里面(注意#endif)
infoplist.strings的文件,跟info.plist文件的本地化相關(guān)
|
|
來自: Crazy Zeng > 《IOS》