2012-09-06 56 views
1

在我的活動,我加載你管的視頻內容進入我的網絡觀點是這樣的:如何恢復視頻播放狀態的Android的WebView

webview.loadData("<iframe class=\"youtube-player\" " + 
"type=\"text/html\" "+" src=\"http://www.youtube.com/embed/bIPcobKMB94\" frameborder=\"0\">", "text/html", "UTF-8"); 

其加載你管的視頻。點擊播放按鈕視頻正在播放。所有這些工作正常。

當我旋轉屏幕如何在Web視圖中恢復視頻狀態意味着如果視頻在旋轉前播放30秒。輪換後我必須從31秒開始。申請

webview.saveState(bundle); 
webview.restoreState(bundle); 

在onSave和onRestore生命週期方法不適用於我。

回答

0

到目前爲止,我發現的最佳解決方案是 - 將網頁視圖放置在框架佈局中,並自行處理方向更改。在配置更改後,從框架佈局中刪除網頁視圖,並在將網頁視圖添加到框架佈局之後重置主視圖。 link for working sample

0

你想從你以前的位置恢復視頻。假設你已經調用了onPause()方法。 覆蓋onpause方法,並將int a = video.currentlocation()的值加載到變量 中,然後覆蓋onresume方法vide.seekto(a)。 video.start();

+0

我在玩視頻在網絡視圖中未在視頻或表面視圖。 – vrs

0

您可以編程方式創建WebView,而不是將其定義到佈局文件中。

取而代之的是,在您的具有ID的佈局中創建一種ViewGroup,並且在活動中創建WebView後,將其添加到此ViewGroup中。在onSaveInstanceState(Bundle outState)方法,通過

webView.saveState(outState);

的WebView的

保存實例,並

webView.restoreState(savedInstanceState);

onCreate(Bundle savedInstanceState)方法恢復其恢復狀態,只有當savedInstanceState不爲空;否則配置你的webView。如果webView的狀態正在恢復,則無需再次進行配置。

非常感謝https://twigstechtips.blogspot.ru/2013/08/android-retain-instance-of-webview.html