Возможно, вам нужно изменить HTML при получении, в этом примере используется JSoup (в основном потому, что он у меня в папке Downloaded-files).
public class SomeSortOfActivityNameGoesHere extends Activity {
static final int TIMEOUT = 30000;
WebView mView;
AsyncTask<String, Void, String[]> mLoad;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mView = new WebView(this);
mView.setBackgroundColor(Color.TRANSPARENT);
LinearLayout layout = new LinearLayout(this);
layout.addView(mView, new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
layout.setBackgroundColor(Color.RED);
setContentView(layout);
mLoad = new AsyncTask<String, Void, String[]>() {
@Override
protected String[] doInBackground(String... params) {
try {
Document doc = Jsoup.parse(new URL("http://www.stackoverflow.com"), TIMEOUT);
Element body = doc.select("body").first();
body.attr("style", "background-color: transparent");
return new String[]{doc.baseUri(), doc.outerHtml(), "text/html", null, null};
} catch (MalformedURLException e) {
} catch (IOException e) {
}
return null;
}
@Override
protected void onPostExecute(String[] result) {
if (result != null) {
mView.loadDataWithBaseURL(result[0], result[1], result[2], result[3], result[4]);
// Note: This is more or less required to be called again here.
mView.setBackgroundColor(Color.TRANSPARENT);
} else {
// Fancy error handling goes here
}
}
}.execute();
}
}
В этом примере должна загружаться stackoverflow.comперелистайте страницу и сделайте ее полупрозрачной, чтобы красный цвет в LinearLayout, удерживающем WebView, «просвечивал».Должен работать как минимум на ICS.