1. Xcode中設置部分文件ARC支持
點擊項目導航文件--> 選中Targets--> 選擇 Build Phases --> 展開Compile Sources
這個時候,我們看到第二列的名稱為:Compiler Flags
雙擊你所要使用ARC的文件,并輸入 -fobjc-arc,
如果想讓使用ARC機制的代碼不使用ARC機制,只需要輸入 -fno-objc-arc
2. AFNetworking簡介
AFNetworking是一個 在IOS開發中 使用非常多網絡開源庫,適用于iOS以及Mac OS X. 它構建于在(apple ios開發文檔) NSURLConnection , NSOperation , 以及其他熟悉的Foundation技術之上。它擁有良好的架構,豐富的api,以及模塊化構建方式,使得使用起來非常輕松.
AFURLConnectionOperation :繼承自 NSOperation 實現了NSURLConnection 的代理方法.
AFHTTPRequestOperation : 繼承自 AFURLConnectionOperation的子類,當request請求使用的協議為HTTP和HTTPS時使用,它封裝了用于 決定request是否成功的狀態碼和內容類型.
AFJSONRequestOperation : 繼承自AFHTTPRequestOperation,用于下載和處理json response數據.
AFXMLRequestOperation : 繼承自 AFHTTPRequestOperation,用于下載和處理xml response數據.
AFPropertyListRequestOperation : 繼承自 AFHTTPRequestOperation,用于下載和處理 property list response數據.
AFHTTPClient :是一個封裝了基于http協議的網絡應用程序的公共交流模式.
3. switch……case中不能定義變量,除非用{}括起來
switch (i) {
case 0:
UIViewController *view = [[UIViewController alloc]init];
//。。。。code
break;
case 1:
//此處如果在使用view的話就會出錯了。。。
break;
default:
break;
}
- view的作用域應該是整個switch語句。 也就是不管case 0,還是case 1,都應該起作用的。
- 加入此時的i為1,那么程序會跳過case 0,直接執行case 1。 假如你又在case 1中調用對象view,那么此時的view是沒有初始化 沒有聲明的,自然而然的出錯了。
- 為了防止這樣的情況出現,就設定了一個這樣的機制
4. iOS Xcode工程目錄的 folder 和 group的區別(藍色和黃色文件夾的區別)
XCode工程目錄里面,有時你會發現2個不同顏色的文件夾,一種是藍色的,一種是黃色的,最常見的是黃色的,我也是最近學習html5的時候,發現還有藍色的文件夾呢,
來上圖看下吧
上圖所示,藍色的是folder 黃色的是group。 那么它們有什么區別呢?
1. group 和 folder的區別
group 一般只在你的工程中是文件夾的形式,但是在本地的目錄中還是以散亂的形式放在一起的,除非你是從外部以group的形式引用進來的。
folder 只能作為資源,整個引用進項目,不能編譯代碼,也就是說,以folder形式引用進來的文件,不能被放在complie sources列表里面。
2. 以folder的形式引用文件
我拖動外部的文件夾 WebViewJavascriptBridge 到我的xcode工程目錄下面
會彈出對話框,如圖
copy,是指文件不在項目的目錄下面,例如項目在桌面上,文件在 Download 下,你 copy 就會被復制到項目里面。如果文件原本就在項目里面,則不執行任何操作。這里不管它,重點是 下面的單選框。
這里我選擇的是以folder的形式引用文件夾,點擊完成,如下圖所示,文件夾是藍色的,并且編譯文件列表里面沒有 webviewjavascriptBridge.m這個文件,證明文件夾引用,只會引用文件夾,文件夾里面的東西都會直接拷貝到 bundle 包,不參與編譯。
3. 以group的形式引用文件
回到1的第一步,選中 create groups for any added folders ,點擊完成,則如下圖所示,文件夾是黃色的,并且編譯文件列表里面神奇的存在了 webviewjavascriptBridge.m這個文件