Foundation framework中用于收集cocoa对象(NSObject对象)的三种集合分别是: NSArray 用于对象有序集合(数组)NSSet 用于对象无序集合 (集合)NSDictionary用于键值映射(字典)以上三种集合类是不可变的(一旦初始化后,就不能改变)以下是对应的三种可
分类:
其他好文 时间:
2016-02-25 00:14:57
阅读次数:
249
面向对象编程 OOP(Object-Oriented Programming) @interface Circle : NSObject { ShapeColor fillColor; ShapeRect bounds; } - (void) setFillColor: (ShapeColor) f
分类:
其他好文 时间:
2016-02-24 20:58:09
阅读次数:
129
继承既保证了类的完整,又能简化代码 把公共的方法和实例变量卸载父类里,子类只需要写自己独有的实例变量和方法即可。 关于继承的一些特性 /* 没有父类的类成为根类,OC中的根类是NSObject 继承的上层称为:父类 继承的下层成为:子类 继承的内容是所有的实例变量和方法 继承是单向的,不能相互继承
分类:
其他好文 时间:
2016-02-24 20:54:50
阅读次数:
127
一 _strong修饰符 1._strong修饰符是id类型和对象类型默认的所有权修饰符。如下: id obj = [[NSObject alloc] init];//在没用明确变量所有权修饰符时,会被默认被_strong修饰符 id _strong obj = [[NSObject alloc]
分类:
其他好文 时间:
2016-02-23 18:35:51
阅读次数:
163
一 基本原理 1.什么是内存管理 移动设备的内存有限,每个app所能占用的内存是有限制的。 当app所占用的内存较多时,系统会发出内存警告,这时得回收一些不需要再使用的内存空间。比如回收一些不需要使用的对象,变量。 管理范围:任何继承了NSObject,对其他基本数据类型(int, char, fl
分类:
移动开发 时间:
2016-02-22 23:36:41
阅读次数:
301
控制器之间反向传值 委托(代理) 首先我们定下一个协议protocol 1. #import <Foundation/Foundation.h>2.3. @protocol ChangeText <NSObject>4.5. -(void)changeText:(NSString *)str;6.
分类:
其他好文 时间:
2016-02-21 22:39:55
阅读次数:
235
使用CAShapeLayer与UIBezierPath可以实现不在view的drawRect方法中就画出一些想要的图形 。 1:UIBezierPath: UIBezierPath是在 UIKit 中的一个类,继承于NSObject,可以创建基于矢量的路径.此类是Core Graphics框架关于p
分类:
移动开发 时间:
2016-02-21 21:16:49
阅读次数:
265
外界如果想要让person对象执行copy方法,必须接收NSCopying协议,实现协议里的方法,来定义copy的细节 一个类可以接收多个协议,协议与协议之间用逗号隔开。所有的协议协议写在父类后面的尖括号内部 @interface Person : NSObject<SayHello, NSCopy
分类:
其他好文 时间:
2016-02-21 15:33:21
阅读次数:
145
先贴出使用@property和@synthesize实现的上一篇中的代码,再解释这两个keyword的使用方法和含义,代码例如以下:Person.h文件#import <Foundation/Foundation.h> @interface Person : NSObject { int _age;
分类:
其他好文 时间:
2016-02-20 17:18:41
阅读次数:
129
// .h 内部的声明部分 (即:fourthController ) //1 声明协议 //UI中的协议名称为,当前类名 + Delegate @protocol FourthViewControllerDelegate <NSObject> //不加说明:默认是必须实现的方法 - (void)p
分类:
其他好文 时间:
2016-02-18 18:05:53
阅读次数:
149