ios中sendEvent和Send Action之间的区别

时间:2014-09-30 04:43:01

标签: ios objective-c user-interface

我试图拦截iOS UI事件,我发现可以使用sendEvent来完成它。 我还尝试使用sendAction:to:from:forEvent拦截UI事件。

我想知道这两种方法之间的区别。 sendAction:to:from:forEvent效率更高吗?

2 个答案:

答案 0 :(得分:5)

可能会帮助你

sendAction:to:from:forEvent:

将选择器标识的操作消息发送到指定目标

- (BOOL)sendAction:(SEL)action
                to:(id)target
              from:(id)sender
          forEvent:(UIEvent *)event

action: 标识操作方法的选择器。有关允许的选择器表单的信息,请参阅讨论。

target: 接收操作讯息的对象。如果target为nil,应用程序会将消息发送给第一个响应者,从而从响应者链向上发送消息直到它被处理。

sender: 发送操作邮件的对象。默认发件人是调用此方法的UIControl对象。

event:一个UIEvent对象,用于封装有关发起操作消息的事件的信息。

- (void)sendEvent:(UIEvent *)event

将事件调度到应用程序中相应的响应者对象。

事件:一个UIEvent对象,用于封装有关事件的信息,包括所涉及的触摸。

看看这个:https://developer.apple.com/library/ios/DOCUMENTATION/UIKit/Reference/UIApplication_Class/index.html#//apple_ref/occ/instm/UIApplication/sendEvent

答案 1 :(得分:0)

Hi Nilesh这将有助于您理解 的 sendAction:为:从:forEvent

<强>动作
标识动作方法的选择器。有关允许的选择器表单的信息,请参阅讨论。

<强>靶
接收动作消息的对象。如果target为nil,应用程序会将消息发送给第一个响应者,从而从响应者链向上发送消息直到它被处理。

<强>发送方
发送操作消息的对象。默认发件人是调用此方法的UIControl对象。

<强>事件
一个UIEvent对象,它封装有关发起操作消息的事件的信息。