【发布时间】:2020-11-28 13:40:41
【问题描述】:
我有一个网络视图。每次用户单击下一个按钮时,我都会在 webview 中加载新内容:
webView.loadHTMLString(bodyText, baseURL: nil)
如何创建以下过渡,以便在用户单击下一步时好像从右侧进入新页面?
查看链接示例
这是我目前所拥有的
let webViewToRemove = webView
let webViewToAdd = WKWebView()
webViewToAdd.frame = webViewToRemove?.frame as! CGRect
if (swipeLeft) {
webViewToAdd.center = CGPoint(x: 2.0*self.view.bounds.width, y: webView.bounds.midY)
} else {
webViewToAdd.center = CGPoint(x: -2.0*self.view.bounds.width, y: webView.bounds.midY)
}
webView = webViewToAdd
webView.loadHTMLString(bodyText, baseURL: nil)
self.view.addSubview(webViewToAdd)
UIView.animate(withDuration: 1.0, animations: {
if (swipeLeft) {
webViewToRemove?.center = CGPoint(x: -2.0*self.view.bounds.width, y: self.webView.bounds.midY)
} else {
webViewToRemove?.center = CGPoint(x: 2.0*self.view.bounds.width, y: self.webView.bounds.midY)
}
webViewToAdd.center = CGPoint(x: self.view.bounds.midX, y: self.webView.bounds.midY)
}, completion: { finished in
webViewToRemove?.removeFromSuperview()
})
【问题讨论】:
-
我有一个和你描述的一样的应用程序,让用户浏览它的帮助页面。我使用 UIPageViewController。使视图滑动变得微不足道。
-
嗨,马特,我可以将 webview 放在 UIPageViewController @matt 中吗
-
您可以将 Web 视图包装在视图控制器中。页面视图控制器的页面是视图控制器。