2012-01-17 16 views
8

Chcę wyświetlić webView na statycznym obrazie na imageView."body background-color: transparent" nie wpłynęło na webview Androida 4.0.3

ustawić kolor przezroczysty do Webview jak ten

webview.setBackground(0); 

ustawić background-color jako przezroczysty

<html> 
<head> 
</head> 
<body style="background-color:transparent"> 
</body> 
</html> 

ale Webview za tło zachować wyświetlanie jako białe.

Pokazuję każde pytanie i wypróbować następujące rozwiązanie strony, ale nic nie mogę zmienić.

Czy macie jakieś pomysły? Proszę pomóż mi.

+0

Ten problem został rozwiązany w Androidzie 4.1.1. – OceanLife

Odpowiedz

5

Jednym ze sposobów na uniknięcie tego jest zaznaczenie "siła" Rendering GPU w

Settings -> Developer Options -> Force GPU Rendering 

Ale to nie rozwiązuje problemu. Próbowałem tego kodu w emulatorze i działa. Wymuszając renderowanie strony internetowej za pomocą oprogramowania zamiast przyspieszania sprzętowego.

webview.setBackgroundColor(Color.TRANSPARENT); 
    webview.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null); 

Czy to rozwiązuje Twój problem?

+0

zaoszczędzisz mi dużo czasu człowiek –

10

Wpadłem na ten sam problem z białym tłem WebView na urządzeniu z ICS (4.0)!

Odpowiedź od NcJlee usunęła białe tło ze strony internetowej, ale wymaga interfejsu API poziomu 11! Nie działa na starszych API!

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

Rozwiązaniem jest ustawienie atrybutu android: layerType = "software" w widoku internetowym w zasobach układu .xml.

<WebView 
     android:id="@+id/webviev" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@android:color/transparent" 
     android:layerType="software" /> 
+0

W przypadku ICS, po prostu musiałem wyłączyć "Wymuś renderowanie GPU" w ustawieniach systemowych, takich jak wymienione NcJee, a następnie ustawBackgroundColor na Color.TRANSPARENT. Jednak musiałem usunąć instrukcję setLayerType, która nie jest dostępna na poziomie API 10. – Aki

0

spróbuj tego kodu do transprent Webview

webView.setBackgroundColor(Color.TRANSPARENT); 
0

próbuje wywołać setLayerType lub określić android: layerType w xml spowodowały błędy kompilacji dla mnie. Stało się tak pomimo ustawienia minSdkVersion lub targetSdkVersion na 11+.

Więc skończyło się przy użyciu odbicia zadzwonić setLayerType jak zaleca: Transparent WebView not working on Android v4.0

Powiązane problemy