大佬教程收集整理的这篇文章主要介绍了ios – 覆盖实例方法表单扩展取决于’@objc’的弃用推断,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的ViewController类中重写了一个名为navbarRightButtonAction(button :)的方法.
class ViewController: PBViewController { override func navbarRightButtonAction(button: PBAdaptiveButton) { ... } }
这是我收到警告的地方:
Override of instance method 'navbarRightButtonAction(button:)' from extension of PBViewController depends on deprecated inference of '@objc'
然后我认为我们的问题在PBViewController类中,如下所示:
extension PBViewController: PBNavigationBarDelegate { func navbarRightButtonAction(button: PBAdaptiveButton) { print("Override this method") } }
所以我添加了@objc func navbarRightButtonAction(按钮:PBAdaptiveButton),但它没有帮助.
然后我查看了PBNavigationBarDelegate协议
protocol PBNavigationBarDelegate { func navbarRightButtonAction(button:PBAdaptiveButton) }
我添加了@objc协议PBNavigationBarDelegate,但它也没有帮助.
我不知道如何修复弃用警告.
@objc extension PBViewController: PBNavigationBarDelegate
有关详细信息,请查看Swift Evolution的Limiting @objc
Inference,SE-0160.它包含以下有关扩展的示例:
class SwiftClass { } @objc extension SwiftClass { func foo() { } // implicitly @objc func bar() -> (Int,int) // error: tuple type (Int,int) not // expressible in @objc. add @nonobjc or move this method to fix the issue } @objcMembers class MyClass : NSObject { func wibble() { } // implicitly @objc } @nonobjc extension MyClass { func wobble() { } // not @objc,despite @objcMembers }
以上是大佬教程为你收集整理的ios – 覆盖实例方法表单扩展取决于’@objc’的弃用推断全部内容,希望文章能够帮你解决ios – 覆盖实例方法表单扩展取决于’@objc’的弃用推断所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。