我正在使用网络视图。它在android 2.3上运行得非常好。但它在android 4.0中显示白屏作为背景。我检查了数据和数据是否会出现在屏幕上,但是在我给定背景的地方会自动出现白色背景。我也试图使这个白色背景透明,但它不适用于Android 4.0。 我提供与我的问题相关的代码。 这是webView.xml
<ImageView
android:id="@+id/backButtonZodiacSign"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_marginLeft="10dp"
android:layout_weight="0.09"
android:contentDescription="@drawable/back3"
android:src="@drawable/back3" />
<ScrollView
android:id="@+id/zodiac_calender_scroll"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="0.91" >`<WebView
android:id="@+id/webViewZodiacCalender"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/transparent"
android:layerType="software"
android:layout_alignParentBottom="true"
android:layout_below="@+id/zodiac_calender_relative"
/>
</ScrollView>
</LinearLayout>
活动文件 - &gt;这里的html数据来自其他活动。
String sign = null;
sign = savedInstanceState.getString("zodiacSign");
zordic_calender_sign = (TextView) findViewById(R.id.zodiac_calender_sign);
zordic_calender_sign.setText(sign.substring(0, 1).toUpperCase()
+ sign.substring(1));
image = (ImageView) findViewById(R.id.zodiac_calender_image);
String uriZodiacSign = "drawable/" + sign;
int imageZodiacSign = getResources().getIdentifier(uriZodiacSign, null,
getPackageName());
Drawable drawableZodiacSign = getResources().getDrawable(
imageZodiacSign);
image.setImageDrawable(drawableZodiacSign);
webView = (WebView) findViewById(R.id.webViewZodiacCalender);
backButton = (ImageView) findViewById(R.id.backButtonZodiacSign);
webView.setBackgroundColor(Color.TRANSPARENT);
webView.loadUrl("file:///android_asset/" + sign + ".html");
请帮助我.... :(
答案 0 :(得分:0)
如果我正确理解您的问题,那么您的网页视图会显示一些使用白色(或至少接近白色)字体的内容。因此,您需要透明的背景。
首先确保webview采用您需要的任何颜色的布局,例如:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
android:orientation="vertical" >
<ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@null"
android:src="@drawable/sample_back" />
<WebView
android:id="@+id/webContainer"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
接下来,确实,似乎没有考虑从XML指定的背景颜色,因此您可以显式调用setBackgroundColor。如下所示:
webContainer = (WebView) findViewById(R.id.webContainer);
webContainer.setBackgroundColor(0x00000000);
webContainer.loadUrl("the_url_to_load");
那会有帮助吗?
答案 1 :(得分:-1)
在Android 4.0版本的清单文件中使用android:hardwareAccelerated =“true”,否则它将显示白屏。