2011-02-10 9 views
4

Я разрабатываю приложение для Android игры, я реализовал все screens.Now я хочу, чтобы изменить цвет фона WebView, можете вести кто-нибудь me.Here моего файл XMLИзменение фона WebView в андроиде

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@drawable/background"> 

<WebView 
    android:id="@+id/webbrowser" 
    android:layout_width="fill_parent" 
    android:layout_height="345px" 
    android:layout_marginTop="46px"/> 

<Button 
    android:id="@+id/Btn" 
    android:background="@drawable/back_btn" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="109px" 
    android:layout_marginTop="37px"> 
</Button> 
</LinearLayout> 

И файл My Java: package com.tli.roadtripbingo;

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.view.Window; 
import android.view.View.OnClickListener; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 
import android.widget.Button; 

public class WebView1 extends Activity { 
    private Button Back; 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     setContentView(R.layout.webview); 
     Back = (Button)findViewById(R.id.back); 

     WebView webView = (WebView) findViewById(R.id.webbrowser); 
     webView.getSettings().setJavaScriptEnabled(true); 
     webView.loadUrl("http://www.vikingredning.no/skilt.aspx"); 
     webView.setWebViewClient(new HelloWebViewClient()); 
     } 
    class HelloWebViewClient extends WebViewClient 
    { 
     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) 
     { 
      view.loadUrl(url); 
      return true; 
     } 
    }; 
} 

Заранее спасибо С уважением Tushar

ответ

26

Вы можете найти ответ здесь Change Background color and font color

WebView myWebView = (WebView) findViewById(R.id.myWebView); 
myWebView.setBackgroundColor(Color.parseColor("#123456")); 
+0

Это странно, но 'myWebView.setBackgroundResource (android.R.color.black);' не работает для меня (уровень 16 API). –

+4

@ 3k: Это потому, что android.R.color.black не является ресурсом. Из документации: «Установите фон для данного ресурса. Ресурс должен ссылаться на объект Drawable или 0, чтобы удалить фон». – user1504495

0

Вы также можете перезагрузить страницу после изменения цвета с помощью метода перезагрузки():

webView.reload(); 
3
 <LinearLayout 
     android:id="@+id/web_layout" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:background="@color/web_bg_color" 
     android:gravity="center" > 

     <WebView 
      android:id="@+id/webview" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" /> 
    </LinearLayout> 


WebView mWebView = (WebView) findViewById(R.id.webview); 
mWebView.setBackgroundColor(Color.TRANSPARENT); 
mWebView.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null); 

Это работало для меня и в леденец.

попробуйте один раз!

4

Вы можете сделать WebView прозрачным, как это:

WebView webView = (WebView) findViewById(R.id.webView); 
webView.setBackgroundColor(Color.TRANSPARENT); 
+0

Вы всегда используете фрагменты кода для обычного кода. Фрагменты кода должны использоваться только для HTML или javascript или другого кода, который может быть запущен в браузере. Вы не можете запускать Java в браузере. В будущем используйте обычные кодовые блоки ... На этот раз я отредактирую ваш ответ и исправлю форматирование и т. Д., Но, пожалуйста, не делайте этого больше в будущем. Это не первый раз, когда я рассказал вам об этом ... –

Смежные вопросы