簡體   English   中英

Java Android-如何使WebView對Android 2.x透明?

[英]java Android - how can I make WebView transparent for android 2.x?

我需要一個WebView是透明的,但是找不到解決方案

我只發現

webView.setBackgroundColor(0x00000000);
webView.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);

,但這僅適用於Honeycomb和更早的版本,我還需要我的App才能在2.x上運行。 我在stackoverflow上發現的所有解決方案都無法正常工作-webView仍然是白色的。

誰能告訴我對於蜂巢之前的版本肯定起作用了嗎?

也許我也應該更改html中的某些內容?

這對我有用:myWebView.setBackgroundColor(Color.TRANSPARENT);

或添加為html的一部分,這是我的代碼片段:

String css = "<head><style >* {word-wrap: break-word;margin:0;padding:0;font-size:15px; text-align:justify;font-family: Arial, Helvetica, sans-serif}</style></head>";

myWebView.loadData(css, "text/html", null);
myWebView.setBackgroundColor(Color.TRANSPARENT);

我已經寫了一個輔助方法來做到這一點,它似乎大部分時間都可以工作,將所有版本的背景色設置為透明,並在可用時更改圖層類型...

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@SuppressLint("NewApi")
public static void clearWebViewBackground (final WebView webView) {
    webView.setBackgroundColor(0x00FFFFFF);
    webView.setWebViewClient(new myWebViewClient());
    if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
        webView.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
    }
}

暫無
暫無

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

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