web-dev-qa-db-ja.com

Android WebView背景色

正当なテキストを表示するWebViewをレイアウトに追加しています。 textViewのように見えるようにWebViewの背景を透明に設定したい。私がやったことは次のとおりです。

WebView synopsis;
synopsis=(WebView)findViewById(R.id.synopsis);
synopsis.setBackgroundColor(0x00000000);

エミュレーターでは動作しますが、デバイスでアプリケーションを実行すると動作しません。白い背景が表示されます。

 String textTitleStyling = "<head><style>* {margin:0;padding:0;font-size:20; text-align:justify; color:#FFFFFF;}</style></head>";
 String titleWithStyle = textTitleStyling + "<body><h1>" + movie.synopsis + "</h1></body>";
 synopsis.loadData(textTitleStyling + movie.synopsis, "text/html", "utf-8");
 synopsis = (WebView) findViewById(R.id.synopsis);
 synopsis.getSettings();
 synopsis.setBackgroundColor(0);
45
Vervatovskis

Synopsis.getSettings()を使用してみてください。

WebView synopsis;
synopsis=(WebView)findViewById(R.id.synopsis);
synopsis.getSettings();
synopsis.setBackgroundColor(Color.TRANSPARENT);
78
Rookie

以下のコードを試してみてください:

webview.setBackgroundColor(Color.parseColor("#919191"));

グレーコード:#919191

25
duggu

これをXMLコードに含める必要があります。

Android:background="@Android:color/transparent"

たとえば、次のようなWebビューの場合:

<WebView
    Android:id="@+id/MyWebView"
    Android:layout_width="fill_parent"
    Android:layout_height="62dp"
    Android:background="@Android:color/transparent"
    Android:scrollbars="none" />

この後、Javaコードに移動し、loadUrlの前にこれを記述する必要があります。

yourWebView.setBackgroundColor(Color.TRANSPARENT);
14

Ur webviewでcssをロードしましたか?

何かのようなもの:

synopsis.loadData(textTileStyling, "text/html", "UTF-8");

または

synopsis.loadDataWithBaseURL("", textTileStyling, "text/html", "UTF-8", "");
2
Timothy

私がやることは

 synopsis.setBackgroundColor(0);

それが役に立てば幸い!

2
user1256477

あなたのhtmlコードはすべてを白に設定します

置換:

 
 String textTitleStyling = "<head> <style> * {margin:0; padding:0; font-size:20;" + 
 "text-align:justify; color:#FFFFFF;} </ style> </ head> "; 
 
 String titleWithStyle = textTitleStyling + "<body> <h1>" + movie.synopsis + 
 "</ h1> </ body>"; 
 
 synopsis.loadData(textTitleStyling + movie.synopsis、 "text/html"、 "utf-8"); 
 synopsis =(WebView)findViewById(R.id.synopsis); 
 synopsis.getSettings(); 
 synopsis.setBackgroundColor(0); 
 

あり:

これにより、ヘッダースタイルから色が除外され、残りのスタイルはbody要素にのみ適用されます

 
 String textTitleStyling = "<head> <style> body {margin:0; padding:0; font-size:20;" + 
 "text-align:justify; } </ style> </ head> "; 
 
 String titleWithStyle = textTitleStyling + "<body> <h1>" + movie.synopsis + 
 "</ h1> </ body>"; 
 
 synopsis.loadData(titleWithStyle、 "text/html"、 "utf-8"); 
 synopsis =(WebView)findViewById(R.id.synopsis); 
 synopsis.getSettings(); 
 synopsis.setBackgroundColor(0); 
 

編集:htmlを修正

1
SGal

ここでいくつかのヒントを見つけることができます: http://code.google.com/p/Android/issues/detail?id=14749 またここ: Android WebViewスタイルの背景色:Android 2.2 で無視される透明

1
Meir Gerenstadt