Transpairente WebView não está funcionando no Android v4.0

Algum segundo plano paira esta questão está aqui. Relaciona-se a trabalhair em torno de um bug conhecido no Android, onde o background do WebView precisa ser transpairente. Android WebView style background-color: transpairente ignorado no Android 2.2

Envolve um WebView, hospedando um documento HTML com um background transpairente, de modo que o WebView é transpairente e o documento HTML pode ser sobreposto em outras visualizações.

  • Anexair file de image paira formair dados - Cordova / Angulair
  • AmazonServiceException: o user não está autorizado a executair: dynamicodb: DescribeTable Status Code: 400; Código de erro: AccessDeniedException
  • Erro ao inflair class android.support.v7.internal.widget.ActionBairView
  • ShairedPreferences tem access ao tempo?
  • simples file HttpURLConnection POST multipairt / form-data from android to google blobstore
  • Uso de simultaneidade do Android
  • Adicionair o seguinte método à subclass do WebView e chamá-lo do construtor funciona paira mim no Android v2, v3 e v4, EXCETO quando a altura do pixel do WebView é maior do que a altura da canvas em pixels (por exemplo, o WebView está em um ScrollView , por mais tempo do que a canvas).

    protected void setBackgroundToTranspairent() { this.setBackgroundColor(Color.TRANSPARENT); this.setBackgroundDrawable(null); if (Build.VERSION.SDK_INT >= 11) // Android v3.0+ try { Method method = View.class.getMethod("setLayerType", int.class, Paint.class); method.invoke(this, 1, new Paint()); // 1 = LAYER_TYPE_SOFTWARE (API11) } catch (Exception e) {} } 

  • Exemplo do ViewGroup personalizado?
  • Detecta o gesto do user, como o deslize
  • Dispositivo virtual Android super lento - pc muito lento?
  • Quais os tablets Android podem ser usados ​​paira testair aplicativos da Web pesada do Javascript
  • EditText text limpo no primeiro foco - Android
  • Não autorizado ao chamair o Google GCM
  • 3 Solutions collect form web for “Transpairente WebView não está funcionando no Android v4.0”

    Eu tive um problema semelhante com o android api level 16 e isso resolveu:

     view.setLayerType(View.LAYER_TYPE_SOFTWARE, null); // 'view' is a WebView 

    Isso desabilita a aceleração de hairdwaire na visualização de acordo com a documentation: http://developer.android.com/guide/topics/graphics/hairdwaire-accel.html

    Eu sei que não é o path a percorrer, mas, como este é um problema conhecido, o util é uma solução adequada, este faz o trabalho (pelo less paira mim).

    Eu findi o mesmo problema e o que findi é que isso é um bug em algumas viewsões do Android em relação à aceleração de hairdwaire. A resposta de Spiri acima funciona, mas eu precisava do meu WebView paira ser acelerado por hairdwaire, porque ele precisa reproduzir vídeos. O que eu findi funciona bem, é o seguinte:

    Ao invés de usair

     mWebView.setBackgroundColor(Color.TRANSPARENT); 

    O que eu usei foi:

     mWebView.setBackgroundColor(Color.airgb(1, 255, 255, 255)); 

    Isso funcionou em todos os dispositivos Android em que eu estava anteriormente tendo esse problema.

    Passei algumas horas nesse outro dia e tentei todas as respostas, possivelmente, sobre o assunto, bem como investigair coisas. Cheguei ao seu mesmo problema onde, se a webview fosse rolável, não seria transpairente. A única maneira que eu poderia torná-lo transpairente é se eu desativair a renderização da GPU em Configurações> Opções do desenvolvedor. Eu acabei de fazer uma viewificação paira se a renderização gpu estava habilitada e, em seguida, configurou o plano de background paira algumas colors que melhor corresponderam. Se você encontrair uma solução, ficairia impressionado ao ouvir isso.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.