创建对象类型
assign:用于非指针变量,用于基础数据类型(例如NSInteger)和C数据类 型(int, float,double,char,等)另外还有id
如:
@property(nonatomic,assign) int number
@property (nonatomic,assign) id className;id必须用assign
反正记住:前面不需要加*的就用assign吧
strong与weak是由ARC新引入的对象变量属性
xcode 4.2(iOS sdk4.3和以下版本)和之前的版本使用的是retain和
assign,是不支持ARC的,xcode 4.3(iOS5和以上版本)之后就有了ARC,
并且开始使用
从iOS5开始,APPLE??供了对json的原生支持
NSJSONSetialization 但是为了兼容以前的iOS版本,可以使用第三方库
来解析JSON
retain:用于指针变量,就是说你定义一个变量,然后这个变量在程序的运
行过程中会被更改,并且影响到其他方法,一般是用于字符串(NSString,
NSMutableString) 数组(NSMutableArray,NSArray) 字典对象,视图对
象(UIView) 控制器对象(UIViewController)等
设置扫??区域的大小 有一个属性
setRectOfInterest
AVCaptureMetadataOutput一个属性
Block就是把你发送的请求和响应放在一块,配成一对,所以又叫代码块
Block的优点就是能把发起的部分和响应的部分放在一起,可以很容易的
理解和处理
缺点是若你的响应部分处理不当,若多次返回,那么你的代码会乱套,托你
返回时返回错误返回了其他的代码快就会出现跑到其他的流程里去,最
严重的是若代码块永远不返回,那么你的程序又是根据返回结果跳转页
面的,那么你永远停留在原页面,并且会造成内存不能释放
autolayout xcode5普及
autoresizingMask 最早用于ipad倒转屏
storyboard和代码都可以实现autolayout
auloayout iOS6开始引用,Xcode4不给力,未推广
字iOS7(Xcode5)开始 普及
sizeclasses界面大统一
AutoLayout2个核心概念
1参照
2 约束
//创建聊天室房间
XMPPRoomCoreDataStorage *rosterstorage =
[[XMPPRoomCoreDataStorage alloc] init];
XMPPRoom *room = [[XMPPRoom alloc]
initWithRoomStorage:rosterstorage jid:[XMPPJID
jidWithString:@"[email protected]"]
dispatchQueue:dispatch_get_main_queue()];
XMPPStream *stream = [self appDelegate].xmppStream;
[room activate:stream];
[room configureRoomUsingOptions:nil];
[room joinRoomUsingNickname:@"smith" history:nil];
// [room fetchConfigurationForm];
[room addDelegate:self delegateQueue:dispatch_get_main_queue()];
个人博客
唐巧 王巍 破船之家
选择target -> build phases -> compile sources -> 单击ARC的
文件将compiler flags设置为:-fobjc-arc
如果一个工程为ARC,其中要添加MRC的文件:
同样的路径,然后单击MRC的文件将compiler flags设置为:-fno-
objc-arc。