编程语言
首页 > 编程语言> > javascript-恢复UIWebView中的位置

javascript-恢复UIWebView中的位置

作者:互联网

我需要将UIWebView中的当前位置存储到磁盘,并在以后启动时从磁盘重新加载它.

我之前所做的是使用JavaScript位置存储window.scrollX和window.scrollY.
这在许多情况下都很好.

另外,我通过获取当前值来存储比例:

webView.scrollView.zoomScale

并通过使用javascript将视口的初始比例设置为原始比例将其还原.

所有这些都有效,但是不可靠.有没有更好的办法?

我阅读了有关UIWebView的restoreIdentifier的信息,但不确定是否可以将其保存到磁盘上?

解决方法:

In iOS 6 and later, if you assign a value to this view’s
restorationIdentifier property, it attempts to preserve its URL
history, the scaling and scrolling positions for each page, and
information about which page is currently being viewed. During
restoration, the view restores these values so that the web content
appears just as it did before.

请参阅Apple Programming Guidetutorial中的更多内容以及示例项目.您可以运行它并将应用程序发送到后台,然后停止使用Xcode运行它,下次打开应用程序时,它将状态恢复为应用程序进入后台之前的状态.在示例项目中,viewDidAppear中可能有一个小修正,如果self.restoringState为NO,则调用showPage函数.

标签:uiwebview,state-restoration,ios,javascript,iphone
来源: https://codeday.me/bug/20191029/1956354.html