react-native - 从 Objective-C 文件导航到 Swift UIViewController
问题描述
我正在尝试将本机模块添加到反应本机项目中。当用户单击 react native 中的按钮时,我想打开这个原生项目的第一个屏幕:https ://github.com/AgoraIO/OpenVideoCall-iOS/tree/master/OpenVideoCall
我按照这里的说明https://facebook.github.io/react-native/docs/native-modules-ios在 Obj-C 中制作了一个原生模块。我有一个扩展 UIController 的 MainViewController 类。如何从 Objective-C 文件启动或导航到 MainViewController。我已经在 Xcode 构建设置中打开了包/定义模块,我尝试按照Call Swift function from Objective C class中的描述导入“buildtarget-Swift.h” 。导入有效,但是当我尝试使用它时找不到 MainViewController。
这是我的代码(我的 Xcode 目标名称是“merge_test”,MainViewController 在 merge_test/OpenVideoCall/MainViewController.swift 中):`
#import "Call.h"
#import <UIKit/UIKit.h>
#import "merge_test-Swift.h"
@implementation Call
RCT_EXPORT_MODULE();
//exports a method to javascript
RCT_EXPORT_METHOD(navigateToExample:(NSString *)name){
MainViewController * vc = [[MainViewController alloc] init];
}
@end
`
我收到错误“未知接收器 mainviewcontroller”,但我很确定我做错的不止于此。我该怎么做呢?对于android来说非常简单,我觉得ios必须有一个简单的方法。
谢谢!
解决方案
推荐阅读
- python - 如何判断按钮是否在 tkinter 中被抬起
- mongodb - 尽管指定了路径,但无法识别 Mongod 命令
- javascript - 无法在 ios 上的 chrome 中下载具有正确名称的文件
- c# - 每次单击按钮时如何更改按钮上的文本?
- spring - Spring:两个具有相同名称的不同bean
- css - 以下代码中的单击事件在`时不起作用
` 包含组件 - python - 我的功能效率低下,占用大量时间-Python
- javascript - EJS中带有特殊字符的对象属性
- spring - 如何使用spring MongoTemplate将两个字段组合到一个对象中?
- docker - rebar eunit在erlang中找不到包含lib:最新的docker容器