Я создаю собственную оболочку iOS для веб-сайта, который выглядит и ведет себя как журнал. У него будут длинные прокручиваемые страницы, но пользователь также может пролистывать между главами. Итак, что я хотел бы сделать, так это загрузить новую HTML-страницу, но сделать так, чтобы она переходила слева или справа, как если бы она была вытолкнута / вытолкнута из стека навигации. Кто-нибудь знает, можно ли ввести некоторую базовую анимацию в компонент WKWebView для достижения этого эффекта?
WKWebView переход на новую страницу
Ответы (1)
Один из способов реализовать это - создать анимацию между двумя объектами WKWebView. Вы загружаете свой первый WKWebView, затем, когда вы активируете переход, вы создаете второй WKWebView, помещаете его за пределы экрана и анимируете его вход, в то же время вы перемещаете текущий webView за пределы экрана, а затем удаляете его из своего представления. Что-то вроде:
func presentNextWebView() {
let webViewToRemove = currentWebView
let webViewToAdd = WKWebView()
webViewToAdd.frame = webViewToRemove.frame
webViewToAdd.center = CGPointMake(2.0*self.view.bounds.width, CGRectGetMidY(self.view.bounds))
currentWebView = webViewToAdd
self.view.addSubview(webViewToAdd)
UIView.animateWithDuration(1.0, animations: {
webViewToRemove.center = CGPointMake(-2.0*self.view.bounds.width, CGRectGetMidY(self.view.bounds))
webViewToAdd.center = self.CGPointMake(CGRectGetMidX(self.view.bounds), CGRectGetMidY(self.view.bounds))
}, completion: { finished in
webViewToRemove.removeFromSuperview()
})
}
person
jackbravo
schedule
23.09.2016
Проблема заключалась в том, что вся навигация между страницами выполнялась в HTML с использованием JavaScript. Таким образом, помимо вертикальной прокрутки, вы могли проводить пальцем влево и вправо для перехода к предыдущей и следующей страницам. Я хотел как-то изменить способ загрузки WKWebView новой страницы сам по себе.
- person Lee Probert; 24.09.2016