原创 爲您揭開runtime的神祕面紗

最近想換工作,本來信心滿滿的,可直到面試,才知道自己所掌握知識的薄弱的地方。於是針對面試薄弱,我開始了runtime的學習.以下將以我的學習過程來給大家講解runtime這個非常重要,但是又很寬泛的一個東西,希望給迷茫中的你一點幫助.也

原创 iOS內存管理

前言 現在iOS開發已經是arc甚至是swift的時代,但是內存管理仍是一個重點關注的問題,如果只知盲目開發而不知箇中原理,踩坑就跳不出來了,理解好內存管理,能讓我們寫出更有質量的代碼。 內存管理是程序設計中很重要的一部分,程

原创 iOS本地數據存取,看這裏就夠了

iOS本地數據存取,看這裏就夠了 應用沙盒 每個iOS應用都有自己的應用沙盒(應用沙盒就是文件系統目錄),與其他文件系統隔離。應用必須待在自己的沙盒裏,其他應用不能訪問該沙盒應用沙盒的文件系統目錄,如下圖所示(假設應用的名稱叫Lay

原创 UIView 中常見的方法總結

UIView 中常見的方法總結 addSubview:  添加一個子視圖到接收者並讓它在最上面顯示出來。  - (void)addSubview:(UIView *)view  討論  這方法同樣設置了接收者爲下一個視圖響應對象。接

原创 iOS兩個App應用之間的跳轉

開發iOS項目的時候,有可能會遇到兩個APP應用相互調用的需求,比如說:支付寶支付......等等。 下面來詳細介紹實現的步驟: 1,添加URL Types項 a,打開項目中info.plist文件,在infomation pro

原创 iOS之事件的傳遞和響應機制

前言: 按照時間順序,事件的生命週期是這樣的:   事件的產生和傳遞(事件如何從父控件傳遞到子控件並尋找到最合適的view、尋找最合適的view的底層實現、攔截事件的處理)->找到最合適的view後事件的處理(touches方法的重寫

原创 __weak和__block探究與區別

準備工作 首先我定義了一個類 MyObject 繼承 NSObject,並添加了一個屬性 text,重寫了description方法,返回 text 的值。這個主要是因爲編譯器本身對 NSString 是有優化的,創建的 stri

原创 那些著名或非著名的iOS面試題(上)

1.如何追蹤app崩潰率,如何解決線上閃退 當iOS設備上的App應用閃退時,操作系統會生成一個crash日誌,保存在設備上。crash日誌上有很多有用的信息,比如每個正在執行線程的完整堆棧跟蹤信息和內存映像,這樣就能夠通過解析這些

原创 Masonry介紹與使用實踐:快速上手Autolayout

前言 MagicNumber -> autoresizingMask -> autolayout 以上是純手寫代碼所經歷的關於頁面佈局的三個時期 在iphone1-iphone3gs時代 window的size固定爲(320,48

原创 Git 常用命令整理

初始化配置  C代碼   #配置使用git倉庫的人員姓名   git config --global user.name "Your Name Comes Here"      #配置使用git倉庫的人員email   git 

原创 Objective C類方法load和initialize的區別

先來看看NSObject Class Reference裏對這兩個方法說明: +(void)initialize The runtime sends initialize to each class in a program ex

原创 如何用同一個工程創建兩個不同版本的應用

如果同一個應用, 需要做一個帶廣告Lite版本, 一個不帶廣告的Pro版本. 那麼問題來了, 該如何優雅的去實現呢? 一般來說有兩種實現方法: 一個把當前工程拷貝然後再修改, 這樣做會導致後期維護成本過高, 每次修改都要同時改兩個工程,

原创 git 使用詳解-- tag打標籤

Git 中的tag指向一次commit的id,通常用來給開發分支做一個標記,如標記一個版本號。 打標籤 git tag -a v1.01 -m "Relase version 1.01"註解:git tag 是打標籤的命令,-a 是

原创 欲先攻其事必先利其器 (第三方資源篇)

一:源代碼實例 1:快速搭建項目源代碼 地址:https://github.com/wujunyang/MobileProject 2:高仿美團iOS版 地址:https://github.com/lookingstars/me

原创 iOS中的單例你用對了麼?

單例模式怎麼定義的,可能在不同的語言,不同的書中不完全一樣,但是概況開來都應該是:一個類有且僅有一個實例,並且自行實例化向整個系統提供。 因此,首先你可能需要確定你是真的需要一個單例類,還是說僅僅是需要一個方便調用的實例化方法。如果你