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这个文件