当将Swift桥接到React-Native时,“不是公认的Objective-C方法”

前端之家收集整理的这篇文章主要介绍了当将Swift桥接到React-Native时,“不是公认的Objective-C方法”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图将我的React-Native 0.33代码链接到一个超级简单的 Swift方法,在 this guide之后,但是我得到的只是显示:( NSString *)名称不是一个公认的Objective-C方法.

这是我的代码

SwitchManager.swift

import Foundation

@objc(SwitchManager)
class SwitchManager: NSObject {

  @objc func show(name: String) -> Void {
    NSLog("%@",name);
  }

}

SwitchManagerBridge.h

#import "RCTBridgeModule.h"

@interface RCT_EXTERN_MODULE(SwitchManager,NSObject)

RCT_EXTERN_METHOD(show:(NSString *)name)

@end

SwitchManager桥接,Header.h

#import "RCTBridgeModule.h"

然后在我的index.ios.js文件中,我从“NativeModules”导入导入{SwitchManager}的SwitchManager;并调用SwitchManager.show(‘One’);.这是错误发生的地方.

不知道怎么了

我一整天都在和这个问题进行斗争.通过将Swift编译器设置为使用Legacy版本(XCode 8更喜欢Swift 3)解决,所以在:

构建设置>向下滚动到“使用旧版Swift语言版本”设置为是.

猜你在找的Swift相关文章