你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> 應用Xcode為iOS運用項目創立PCH文件的辦法及運用示例

應用Xcode為iOS運用項目創立PCH文件的辦法及運用示例

編輯:IOS開發綜合

pch 可以用來存儲同享信息,好比裝備屏幕的寬度,高度。版本號等等 公用信息
Xcode 老版本會主動為我們創立pch文件,新版本開端不主動創立了,假如須要應用可以本身手動創立

201632190845019.jpg (730×430)

創立完成後可以在外面界說常量
此處以屏幕尺寸為例
以下

201632190921105.png (841×304)

代碼以下:

//獲得屏幕 寬度、高度
#define SCREEN_FRAME ([UIScreen mainScreen].applicationFrame)
#define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width)
#define SCREEN_HEIGHT ([UIScreen mainScreen].bounds.size.height)

201632190942389.jpg (1139×659)

然後在法式中應用 可以直接 應用

CGRectMake(0,60,SCREEN_WIDTH, SCREEN_HEIGHT-60)

PCH文件的運用舉例:
在PCH文件中寄存宏就是正常的創立,這裡不舉例了。
在PCH文件中寄存頭文件常常用於分類,好比我們給UIColor增長了一個分類,而且願望在多個文件中應用這個分類,那末便可以在PCH文件中導入此分類的頭文件。
在PCH文件中自界說一些有效的宏,好比取代NSLog:
#define JYLog(...)  NSLog(__VA_ARGS__)
我們曉得NSLog消耗機能,在調試階段完成後須要將NSLog都刪除失落,然則跟著文件的增多,NSLog則欠好掌握,每個都去找很糟蹋時光。
此時我們可以應用宏來完成主動開啟/封閉NSLog的功效。

#ifdef DEBUG

// 調試階段
#define JYLog(...)  NSLog(__VA_ARGS__)

#else

// 宣布階段
#define JYLog(...)

#endif

當處於調試階段,JYLog的感化相當於NSLog,而在宣布階段則JYLog的感化相當於空。如許用JYLog取代NSLog便可以完成之前我們願望做的。
DEBUG的值會跟著Xcode中的設置轉變而轉變。
Edit Scheme -> Run -> Info -> Build Configuration.
Debug代表調試階段。
Release代表宣布階段。
然則假如如許做能夠有潛伏的風險。後面說過PCH文件的內容會拷貝到每一個文件,所以假如此時我們創立一個.c文件,在這個文件中異樣會拷貝PCH中的內容,假如PCH文件中湧現C說話不克不及辨認的,那末很顯著會失足。
我們願望PCH文件只在Objective-C的規模內有用(OC文件內拷貝PCH文件內容),所以須要再停止斷定:

#ifdef __OBJC__

#ifdef DEBUG

// 調試階段
#define JYLog(...)  NSLog(__VA_ARGS__)

#else

// 宣布階段
#define JYLog(...)

#endif

#endif

至此能力包管准確應用。
由於PCH文件的內容會拷貝到每個文件中,即便這個文件並未用到PCH文件的內容。所以在應用PCH文件的時刻要鄭重,這能夠也是Apple不再默許創立它的緣由吧。

【應用Xcode為iOS運用項目創立PCH文件的辦法及運用示例】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved