一.NSTimer
1.初始化
+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)seconds target:(id)target selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)repeats
预定一个Timer,设置一个时间间隔。表示输入一个时间间隔对象,以秒为单位,一个>0的浮点类型的值,如果该值<0,系统会默认为0.1;
target:(id) aTarget表示发送的对象,如self selector:(SEL) aSelector方法选择器,在时间间隔内,选择调用一个实例方法;
userInfo:(id) userInfo 此参数可以为nil,当定时器失效时,由你指定的对象保存和释放该定时器;
repeats:(BOOL)YES or NO 当YES时,定时器会不断循环直至失效或被释放,当NO时,定时器会循环发送一次就失效;
2. 触发(启动)
当定时器创建完(不用scheduled的,添加到runloop中后,该定时器将在初始化指定的timeInterval秒后自动触发)
可以使用-(void)fier 方法来立即触发该定时器
在重复执行的定时器中调用此方法后立即触发该定时器,但不会终端其之前的执行计划
在不重复执行的定时器中调用此方法,立即触发后,就会使这个定时器失效
3.停止
-(void)invalidate;
这个是唯一一个可以将定时器从runloop中移出的方法
二. NSMapTable
NSMapTable和NSDictionary相对应,相对于NSDictionary/NSMutableDictionary,NSMapTable有如下特征:
NSDictionary/NSMutableDictionary会copy对应的key,强引用相对应的value
NSMapTable是可变的,没有一个不变的类与其对应
NSMapTable是可以对其key和value弱引用,在这种情况下当key或者value被释放的时候,此entry会自动从NSMapTable中移除
NSMapTable在加入一个(key,value)的时候,可以对其value设置为copy
NSMapTable可以包含任意指针,使用指针去做相等或者hashing检查
<pre class="objc" name="code">id delegate = ...;
NSMapTable *mapTable = [NSMapTable mapTableWithKeyOptions:NSMapTableStrongMemory
valueOptions:NSMapTableWeakMemory];
[mapTable setObject:delegate forKey:@"foo"];
NSLog(@"Keys: %@", [[mapTable keyEnumerator] allObjects])
NSMapTable对象在初始化的时候使用options去分别指定keys和values的行为
NSMapTableStrongMemory:指定对应的key或者value为强引用
NSMapTableWeakMemory:指定对应的key或者value为弱引用。
NSMapTableCopyIn:指定对应的key或者value在假如集合中的时候为copy
NSMapTableObjectPointerPersonality :此选项是直接引用指针进行isEqual:和hash
NSPointerFunctionStrongMemory创建一个retain/release对象的合集,非常像常规的NSSet或NSArray
NSPointerFunctionWeakMemory 使用等价的——Weak来存储对象并自动移除被销毁的对象
NSPointerFunctionCopyIn 在对象被加入到集合前拷贝他们
http://www.cocoachina.com/industry/20140122/7735.html
三. position与anchorPoint
position是Layer中的anchorPoint在superLayer中的位置坐标
anchorPoint作用:为为Layer变换的支点
Layer坐标的原点相对superLayer会有所改变,frame.origin由position和anchorPoint共同决定
http://www.cnblogs.com/benbenzhu/p/3615516.html
四.ShapeLayer UIBezierPath
http://blog.csdn.net/yongyinmg/article/details/38755955
五. CALayer,covertTime beginTime timeOffset speed fillMode CABasicAnimation TimingFunction CAkeyframeAnimation
http://blog.csdn.net/smking/article/details/8424851
http://www.dreamingwish.com/article/coreanimation-programming-guide-summary.html
六 . 继承,封装,多态
http://www.cocoachina.com/ios/20141211/10609.html
七. CoreAnimation 隐式动画和显示动画
http://www.mamicode.com/info-detail-500488.html
http://www.cnblogs.com/AbelChen1991/p/3632654.html