WKWebview在设备旋转后变为空白
问题描述:
我使用多个子视图进行滚动视图,包括collectionView,webView和普通UIview。据Ive通读,不建议将webview放在滚动视图中。但是在scrollview中添加webview作为子视图仍然可以。WKWebview在设备旋转后变为空白
要求是web视图将动态加载内容的onClick。所以,起初,尝试根据内容大小动态调整webview的高度是个问题。每次旋转后,高度都会增加额外的像素。但不知何故设法使用viewDidLayoutSubviews()中的webview.sizeToFit()来工作。
但现在的问题是,web视图的内容的设备,每2转后消失。内容应该仍然存在,因为网页视图的帧大小在roation之后不会改变,只是内部文本消失。
没有其他错误,为什么Webview是显示空白后rotated.This是我viewdidlayoutsubview。
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
webView.frame.size.height = 1
webView.frame.size = webView.sizeThatFits(.zero)
webView.sizeToFit()
}
不知道该如何解决。
答
我只是在这里回答自己,因为上次解决方案仍然适用于此。刷新视图布局中的覆盖func viewWillTransition。根据苹果的文档,“UIKit在更改呈现的视图控制器视图的大小之前调用此方法”。所以我改变了方向之前刷新了所有的子视图。
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator){
super.viewWillTransition(to: size, with: coordinator)
//code to refresh the views
}
您可以发布调试层次屏幕截图? –
你好@Reinier梅丽安,这是波泰特[链接](https://drive.google.com/file/d/0B2KLCHaQGvD9dlFTVEw0WVR1Q0k/view?usp=sharing)和景观[链接](https://drive.google。 COM /开?ID = 0B2KLCHaQGvD9ZUZwSEhlTEhWWTQ)。几个星期前我刚刚开始学习ios开发,所以不确定这是否是应该发布的正确的调试层次结构。 现在,我以某种方式设法通过使用* viewWillTransition *刷新屏幕旋转视图来解决问题。但是仍然没有任何线索可以让webview内容消失。 预先感谢您:d – user3188865
的图像是好的,但没有帮助,所以这是一个真正的项目或测试项目? –