iphone - 如何将选择器声明为属性iOS,接下来如何使用我的属性?

标签 iphone ios ipad uiimageview uicontrol

接下来我写。所有代码均使用ARC编写

@interface MPEvent : UIImageView
@property (nonatomic, unsafe_unretained) SEL action;
@property (nonatomic, strong) id target;

@end

选择器是否以正确的方式声明?

在实现中,我将以这种方式使用我的属性:
- (void)sendActionToTargetFromView:(id)view {
    [target performSelector:action withObject:view];
}

但是编译器给我警告
警告:语义问题:PerformSelector可能会导致泄漏,因为其选择器未知

如何解决此警告?

最佳答案

在下面的示例中,仅对一行代码忽略-Warc-performSelector-leaks,之后,诊断将返回到先前存在的任何状态。

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
    [self.ticketTarget performSelector: self.ticketAction withObject: self];
#pragma clang diagnostic pop

pragma warnings help
Detailed description

关于iphone - 如何将选择器声明为属性iOS,接下来如何使用我的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9020438/

相关文章:

ios - 安装后启动 iPhone 应用程序,无需用户交互

iphone - uitextview dataDetectorTypes 不适用于像 bitly 链接这样的短链接

ios - 在方法运行之前使用可达性检查连接

ios - 如何在 iOS 中使用 Bing Api 翻译语言?

ios - CFRelease 导致 iPad 应用程序崩溃

iphone - CoreData 对象更新问题

iphone - 如何自定义Facebook分享框中的文字(见图)?

ios - UIImage用户信息

ios - 获取当前核心数据模型的名称

iphone - 从未调用过 LocationManager 的 didEnterRegion