主UIWebView
上有UIViewController
,效果很好。我使用这个命令来发送数据,这一切都很好:
[self.dWebView stringByEvaluatingJavaScriptFromString: myString];
问题是我添加了另一个UIViewController
(QRViewController
)从QR标签读取数据,我想以相同的方式发送它。
这是QRViewController
的代码,但没有任何反应:
ViewController* _viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
[_viewController.dWebView stringByEvaluatingJavaScriptFromString: qrString];
有可能这样做吗?有什么遗失的吗?
先谢谢。
答案 0 :(得分:1)
将NSString * str对象添加到ViewController
将其传递为:_viewController.str = qrString;
[self.dWebView stringByEvaluatingJavaScriptFromString:self.str];
这将有效
答案 1 :(得分:1)
您正在通过调用此代码创建同一UIViewController
类的第二个实例:
ViewController* _viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
_viewController
未指向屏幕上可见的那个,它是一个当前未显示的新副本。
您需要获取当前正在显示的上一个实例的句柄并将数据传回给它。这取决于您构建此应用程序的方式。
例如:
self.presentingViewController
。viewControllers
属性以获取之前的句柄。