HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 使用选择器和NSSelectorFromString将消息发送到对象大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
以下将传递respondsToSELEctor测试,但SIGABRT实际调用[viewController选择器]或[viewController action:SELEctor].堆栈跟踪状态’NSInvalidArgume@R_618_10443@ception,原因: – [MyViewController选择器]:无法识别的选择器’.

[viewController @SELEctor(SELEctor)]将导致编译错误(错误:在’SELEctor’之前预期’:’).

当选择器是硬编码时,一切都很好.

如何通过选择器向对象发送消息?

-(void) notifyViewControllers:(NSString*) message
{
    if(!messagE) return;

    SEL SELEctor = NSSELEctorFromString(messagE);
    if(!SELEctor) return;

    NSArray* viewControllers = [self.tabBarController viewControllers];
    if(!viewControllers) return;

    for (UIViewController* viewController in viewControllers)
    {
        if(!viewController) conTinue;

        if ([viewController respondsToSELEctor:SELEctor]) {
            // [viewController SELEctor];
            [viewController action:SELEctor];
        }
    }
}

解决方法

[self performSELEctor:@SELEctor(notifyViewControllers:) withObject: message];

大佬总结

以上是大佬教程为你收集整理的ios – 使用选择器和NSSelectorFromString将消息发送到对象全部内容,希望文章能够帮你解决ios – 使用选择器和NSSelectorFromString将消息发送到对象所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。