gpt4 book ai didi

ios - React-Native:关闭/退出 React-Native View 回到 Native

转载 作者:可可西里 更新时间:2023-11-01 03:18:26 26 4
gpt4 key购买 nike

我有一个现有的应用程序,我正在为它的一部分集成 React-Native。我是无法理解如何“退出”react-native 并返回到原生 View 。

这是一些代码:

// Main objective-c code that bootstraps the react-native view. This view is loaded as a modal view.
MainViewController.m:

- (void)viewDidLoad {
[super viewDidLoad];

RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation moduleName:@"IndexApp" initialProperties:props launchOptions:nil];

rootView.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height-49);
[self.view addSubview:rootView];

}

我最初的 react 观点是这样的:

render() {
return (
<Navigator
style={styles.container}
...

我在导航器上有一个右键导航按钮,我想“关闭” react View 和底层的 MainViewController native View 。

我试过像这样从 react View 回调到 MainViewController,但无济于事:

RCT_EXPORT_METHOD(dismiss:(NSString *)name location:(NSString *)location)
{
NSLog(@"dismiss...");
// these don't do anything
//[self dismissViewControllerAnimated:YES completion:nil];
//[self.navigationController popViewControllerAnimated:YES];
// anything with _rootView doesn't do anything, i.e. _rootView removeFromSuperview];

}

任何有关“退出” react native View 并返回 native View 的方法的帮助都将不胜感激。

最佳答案

我发现这个可行的唯一方法是 this

它的要点是:

  1. 在 Obj-C 中创建一个 NotificationManager 类并将其公开为 React 模块
  2. 在 ViewController 中注册一个通知,当收到通知时会触发 [self dismissViewController..]

关于ios - React-Native:关闭/退出 React-Native View 回到 Native,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35298144/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com