原创 NSString的copy屬性分析 以及 深拷貝淺拷貝
1、copy copy只會產生不可變的副本對象(NSString對象) 深拷貝 對象拷貝,內容拷貝 淺拷貝 指針拷貝,地址拷貝 可變拷不可變
原创 OC中nil,Nil,NULL的區別
nil:指向oc中對象的空指針 Nil:指向oc中類的空指針 NULL:指向其他類型的空指針,如一個c類型的內存指針 NSNull:在集合對象中,表示空值的對象 若obj爲nil: [obj message]將返回NO,而不
原创 Xcode 製作靜態庫 .a文件的具體步驟
寫在最前面:靜態庫文件.a,分真機靜態庫和模擬器靜態庫,還分DEBUG版本和Release版,注意區分!!! 1、新建一個靜態庫工程,點擊NEXT,保存在電腦上 2、項工程中添加源文件(.m)和頭文件(.h) 3、編譯前注意選擇DE
原创 iOS 微信支付 實用教程
相關資料 SDK下載:https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=11_1 APP端開發步驟說明:https://pay.weixin.qq.com/wiki/do
原创 IOS開發--微信支付
IOS開發--微信支付 前言:下面介紹微信支付的開發流程的細節,圖文並茂,你可以按照我的隨筆流程過一遍代碼。包你也學會了微信支付。而且支付也是面試常問的內容。 正文: 1、首先在開始使用微信支付之前,
原创 Objective-C 內存管理 看這個就夠啦
內存管理 範圍: 任何繼承了NSObject 的對象,對基本數據類型無效 原理: 每個對象內部都保存了一個與之相關聯的整數,稱爲引用計數器(auto reference count)每當使用 a
原创 UIViewController的基本概念與生命週期
UIViewController是iOS頂層視圖的載體及控制器,用戶與程序界面的交互都是由UIViewController來控制的,UIViewController管理UIView的生命週期及資源的加載與釋放。 UIView與UIWi
原创 三目運算符的陷阱
分析:上面這個用了三目運算符的表達式,判斷條件是_timeData.startTime > 0 ,有時候定式思維就會造成我們直接把後面選項裏的第一項空掉,以爲條件爲真,就會選擇_timeData.startTime。
原创 最新方法制作自己的cocoapods開源框架的詳細步驟
1、在GitHub上新建一個倉庫,選公開倉庫,選MIT的license,新建README.md文件; 2、克隆到本地,把你要上傳的庫放在倉庫文件夾裏,這裏我用的是界面化git工具sourceTree,當然你也可以用指令 git clo
原创 Getting start with OCMock in you unit test
1、Write pod file — Add pod into your project Attention:OCMock need to be added to the test target Then,install your po
原创 Objective-C的內省方法介紹
內省(Introspection)是面嚮對象語言和環境的一個強大特性,Objective-C和Cocoa在這個方面尤其的豐富。內省是對象揭示自己作爲一個運行時對象的詳細信息的一種能力。這些詳細信息包括對象在繼承樹上的位置,對象是否遵循特
原创 @property (nonatomic, strong) NSString *str有什麼問題
NSString是不可變字符串,NSMutableString是NSString的子類,是可變字符串。 如果一個類有一個NSString屬性用strong修飾,如果給這個屬性一個NSString類型的字符串,
原创 GCD定時器使用筆記 及 詳細分析
<pre name="code" class="objc"> // 1.創建創建隊列,取全局併發隊列 dispatch_queue_t queue = dispatch_get_global_queue(0, 0);
原创 SDWebImage 原理及使用
SDWebImage託管在github上。https://github.com/rs/SDWebImage 這個類庫提供一個UIImageView類別以支持加載來自網絡的遠程圖片。具有緩存管理、異步下載、同一個URL下載次數控制和優化
原创 結合一道面試題 看c語言運算符的執行順序
結合一道面試題 判斷這段代碼的輸出是什麼 這個判斷條件是 先執行b[i++]!=4 再執行 a = a的真假是循環的持續條件 注意:i++的結合順序是從左到右,所以b[i++]這個下標是先取i的值,i再進行自加。++i操作