iOS-解决调用performSelector产生警告问题

2018-06-20  本文已影响0人  23b813a14221

///不需要带参数情况
if ([self.view respondsToSelector:NSSelectorFromString(@"setSubViews")])
{
// 这样会产生警告
// [self.view performSelector:NSSelectorFromString(@"setSubViews")];
SEL selector = NSSelectorFromString(@"setSubViews");
IMP imp = [self.view methodForSelector:selector];
void (*func)(id, SEL) = (void *)imp;
func(self.view, selector);
}

///需要带参数情况
SEL selector = NSSelectorFromString(@"processRegion:ofView:");
IMP imp = [_controller methodForSelector:selector];
CGRect (*func)(id, SEL, CGRect, UIView *) = (void *)imp;
CGRect result = func(_controller, selector, someRect, someView);

上一篇下一篇

猜你喜欢

热点阅读