我正在用网络编程语言构建一个应用程序,希望在用户点击HTML按钮时启动摄像头。由于我希望我的摄像头视图是自定义的,所以我需要用Swift来设计它。所以当用户点击这个HTML按钮时,我希望在Swift中“捕捉”这个点击,这样我就可以启动我的原生摄像头视图。
我知道这可以用WKWebview来完成,但我真的不知道该怎么做。
例如,我的Javascript(jQuery)代码可能如下所示:
// User clicks to start the native camera with Swift
$(".camera_button").click(function() {
// Function to call the camera view from JS to Swift
});
你能帮我做那件事吗?
- 谢谢-谢谢
3条答案
按热度按时间eaf3rand1#
首先,设置html字符串:
其次,创建
WKWebView
并对其进行配置第三,设置要添加到
WKWebView
的JavasScript
脚本的配置之后,创建您的脚本。重要:“messageHandler.(name).postMessage”中名称必须等于此行中的名称:
最后,扩展Controller或Cell(本例)以侦听脚本
ldfqzlk82#
根据@亚历克斯·佩尔蒂埃的回答,这对我很有帮助,下面是我的问题的解决方案。
在我的“loadView()”函数中,我有以下内容:
我的函数处理发送到Swift的Javascript事件:
......最后,我的Javascript(jQuery)代码,当点击我的相机按钮时(HTML格式):
我希望它能帮助其他人:-)!
wwodge7n3#
首先我们创建一个js文件。在js中,当你点击一个元素时,你可以发送一条消息,如下所示:
创建js文件和wkwebview之后,需要注入脚本:
最后你必须添加监听器函数:
Source Code