2014-09-28 29 views
1

有什麼方法可以改變WebView的上下文嗎? 我的意思是,當我擴展WebView類時,我調用帶有上下文的超級構造函數(在我的例子中是一個活動)。稍後,此活動不再存在,我們將轉向其他活動。爲WebView設置了新的上下文

問題是WebView仍然活着,並且對此上下文有參考。 因爲初始化很長,我無法隨時創建我的WebView。 我試圖用getApplicationContext()調用超類,但是我發現這對顯示視頻也有問題。

我能做些什麼來設置WebView的上下文而不創建新的上下文。

謝謝。

+0

http://www.doubleencore.com/2013/06/context/也許這將幫助您瞭解什麼是最適合您的需求的環境 – Pavlos 2014-09-28 12:56:17

回答

1

通過新的上下文的WebView您可以創建初始化網頁視圖的方法,通過上下文的論點一樣如下圖所示:

public static Webview initializeWebView(Context context) 
{ 

    myWebView = new WebView(); 
    return myWebView; 

} 

並在此之後,你可以調用此方法。無論您想,只要你想。你可以這樣調用,如下所示:

myWebView = initializeWebView(YourActivityName.this); 
//this way whatever Context you will pass your webview will be initialized that way 
//for example you can also pass getApplicationContext() as an Argument 
myWebView = initializeWebView(getApplicationContext()); 
//or 
myWebView = initializeWebView(customContext); 

這個customContext可以是從你想使用的其他上下文繼承的任何上下文。

+0

這應該是解決方案(並感謝您的出色答案)。 – 2018-01-10 13:35:39