欢迎来到天天文库
浏览记录
ID:27609668
大小:1.20 MB
页数:32页
时间:2018-12-04
《[工学]ios编程 targetaction 实验指导》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、内容回顾代码示例:这样的代码会不会产生内存泄露?-(void)viewDidUnload{self.statusText=nil;将self.statusTextz的引用计数减一(发送releas),-将Nil的引用计数加一!}-(void)dealloc{[statusTextrelease];[superdealloc];}内容回顾看一下属性声明:#import@interfaceButton_FunViewController:UIViewController{UILabel*statusText;}@property(n
2、onatomic,retain)IBOutletUILabel*statusText;-(IBAction)buttonPressed:(id)sender;@end内容回顾代码示例:voidsetStatusText:(UILabel*)aLabel{[aLabelretain];[statusTextrelease];statusText=aLabel;}本章授课内容Target-Action课堂实验Target-ActionTarget-Action:Target-Action是一种设计模式,在这个设计模式中,一个对象保留了一些必要信息,当某种事件发生
3、时将消息发送给另外一个对象。这些必要的信息包含两部分的内容:一部分是一个Selector,用来标识要调用的Action;另一部分是Target,也就是接受消息的对象。Target-ActionTarget-Action按钮包含了target和actionNSButtonaction=seed:Foo-(void)seed:(id)sendertargetTarget-Action当用户和控件交互时,控件就会给它们的target发送action消息。例如:点击一个按钮,将会给它的target发送action消息:Action方法接受一个参数:发送者。该参数可以
4、让接收者知道是哪一个控件发送了这个action消息。NSButtonaction=seed:Foo-(void)seed:(id)sendertargetseed:-(IBAction)toggleFoo:(id)sender{BOOLisOn=[senderstate];}Target-ActionTarget-Action是UIControl类中定义的一种机制,凡是UIControl子类的对象都可以通过设置target和action来通过消息触发某个操作。Target-ActionUIControl类的声明@interfaceUIControl:UIVi
5、ew{NSMutableArray*_targetActions;CGPoint_previousPoint;CFAbsoluteTime_downTime;}(void)addTarget:(id)targetaction:(SEL)actionforControlEvents:(UIControlEvents)controlEvents;(void)removeTarget:(id)targetaction:(SEL)actionforControlEvents:(UIControlEvents)controlEvents;(NSArray*)actio
6、nsForTarget:(id)targetforControlEvent:(UIControlEvents)controlEvent;-(void)sendAction:(SEL)actionto:(id)targetforEvent:(UIEvent*)event;-(void)sendActionsForControlEvents:(UIControlEvents)controlEvents;@endTarget-ActionNSButtonNSMutableArray*_targetActions;targetactionidmethodidmeth
7、odidmethodidmethodobjobjobjobjTarget-ActionUIControlEventsenum{UIControlEventTouchDown=1<<0,UIControlEventTouchDownRepeat=1<<1,UIControlEventTouchDragInside=1<<2,UIControlEventTouchDragOutside=1<<3,UIControlEventTouchDragEnter=1<<4,UIControlEventTouchDragExit=1<<5,UIControlEventTou
8、chUpInside=1<<6,UIControlE
此文档下载收益归作者所有