键盘在Web视图中无法正确显示 - 横向模式

问题描述 投票:1回答:2

我正在呈现这样的自定义Web视图。

let vc = CustomWebViewVC.viewController()
    vc.delegate = self
    present(vc, animated: true, completion: nil)

我已实现此功能,以横向模式显示自定义Web视图。

override var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation {
    return .landscapeRight
}

//----------------------------------------------------------

override var shouldAutorotate: Bool {
    return false
}

问题

CustomWeb ViewVC在横向模式下正确打开,但当我点击webview内部的文本字段时,会发生这种情况。

enter image description here

我不知道是什么问题。

有什么建议?

ios swift webview landscape
2个回答
0
投票

viewDidLoad中添加以下代码

斯威夫特4

let value = UIInterfaceOrientation.landscapeLeft.rawValue
UIDevice.current.setValue(value, forKey: "orientation")

0
投票

遗漏的方法是这样的

override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
    return UIInterfaceOrientationMask.landscapeRight
}

在视图控制器中添加此功能后就可以了。

要以横向模式打开viewcontroller,您需要像我一样实现所有三种方法。

override var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation {
    return .landscapeRight
}

//----------------------------------------------------------

override var shouldAutorotate: Bool {
  return false
}

override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
    return UIInterfaceOrientationMask.landscapeRight
}
© www.soinside.com 2019 - 2024. All rights reserved.