iOS WebView相机预览无法填满预览区域的问题排查与解决咨询
相机预览无法填满WebView中的指定区域(iOS WKWebView + react-webcam)
我有一个包含相机预览框和拍摄按钮的网页,但相机预览画面无法填满整个预览框(已在附图中用红色标记预览画面)。将手机旋转至横屏后,无论横屏还是竖屏状态下预览都能正常显示。
以下是我的WebView代码:
struct MyWebView: UIViewRepresentable { let urlString: String? public let result : ((Result) -> Void) func makeUIView(context: Context) -> WKWebView { let config = WKWebViewConfiguration() config.userContentController = WKUserContentController() config.allowsInlineMediaPlayback = true if #available(iOS 9.0, *) { config.requiresUserActionForMediaPlayback = false } else { config.mediaPlaybackRequiresUserAction = false } // Set user controller let webView = WKWebView(frame: .zero, configuration: config) config.userContentController.add(MyWebViewHandler(result: result), name: "WebViewMessageHandler") return webView } func updateUIView(_ uiView: WKWebView, context: Context) { guard let url = urlString else { debugPrint("URL is empty") return } uiView.load(url) } }

如何确保相机预览能覆盖指定的全部区域?任何见解或建议都将不胜感激,谢谢!
更新:
我们在前端侧找到一个临时解决方法,使用的是react-webcam库。相机本身的画面是正常的,但预览无法填满区域。我们的做法是:点击按钮启动相机,但故意添加1秒延迟后再在预览中显示相机画面,这似乎解决了问题。目前仍不清楚为何旋转屏幕或延迟显示预览能解决该问题,我会保留此问题以等待后续解答。
内容的提问来源于stack exchange,提问作者theAshutoshAJ
相关产品推荐
相关产品推荐

