簡體   English   中英

iPhone-如何維護UIWebView的狀態?

[英]iphone - how to mentain the state of UIWebView?

我正在顯示UIWebView和HTML頁面,其中包含一些復選框和單選按鈕。 我的應用程序具有選項卡控制器,可以同時切換兩個控制器。 我如何維護UIWebView的當前狀態。 (例如,我選擇了一個復選框,然后更改了選項卡,然后轉到其他ViewController,然后再次返回到UIWebView。WebView會重置自身並轉到開始...我想保持UIWebView的狀態(單擊所有復選框) ..我將如何做?

任何想法 ??

提前致謝

聽起來好像您正在將Web視圖加載到viewDidAppear:中,或者每次切換到該選項卡時都會調用其他某種方法。 如果您在viewDidLoad:中加載Web視圖,它將僅加載一次,並且在切換選項卡時將保留其狀態。


編輯 :當我在2009年寫這個答案時,我顯然不像我認為的那樣理解視圖控制器的生命周期。 科里·弗洛伊德(Corey Floyd)是對的。 viewDidLoad:方法也可以多次調用,因為如果未顯示視圖,則UIViewController將在內存不足的情況下卸載其視圖。 當用戶切換回視圖時,再次調用viewDidLoad來重建視圖。

多么尷尬。

我有一個想法可能會有所幫助:

  • 要從您的應用到網頁的狀態,請使用調用的URL將變量的值作為請求參數提供,並讓網頁進行處理並相應地查看表單元素。
  • 為了將網頁的狀態恢復到您的應用中,請在每次更新任何網頁元素時刷新網頁,並使用新的URL來提供已更改元素的新值。 回到您的應用程序,您可以實現UIWebViewDelegate,並在WebViewDidFinishLoad方法(或您希望使用的WebViewDidStartLoad方法)內部使用webView.request.URL解析GET參數並相應地更新您的應用程序。

希望這會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM