studio programacion para móviles libro edición desarrollo desarrollar curso aprende aplicaciones android html css webview dialog

para - manual de programacion android pdf



Android webView: ¿cómo cambiar el color de fondo del cuadro de diálogo webView? (1)

en Android tengo una vista web que abre bien y lo he configurado así:

webView= (WebView) findViewById(R.id.webview); webView.setWebChromeClient(new WebChromeClient()); webView.setWebViewClient(new myWebViewClient()); webView.getSettings().setJavaScriptEnabled(true); webView.loadUrl(url);

pero ahora, durante la sesión de la vista web, aparece una lista que aparece y me gustaría cambiar el color de fondo de esa vista de lista. ahora es blanco y quiero que sea gris? ¿Hay alguna manera de hacer cumplir esto?

El elemento de la lista es del servidor web. Solo estoy mostrando una vista web. solo le paso una url. No tengo un adaptador, ya que no tengo la vista de lista. está en una página web

es el servidor web de mi empresa, así que podría pasar en javascript si eso ayuda. Lo que estoy notando es que en algunos dispositivos el color es diferente. a veces gris a veces blanco. no estoy seguro de lo que está pasando. la otra cosa que noté de la foto como puedes ver, la vista de lista está saliendo de la ventana de la vista web. Eso podría indicarme que este es un diálogo nativo utilizado por la página web tal vez. entonces, ¿habría un elemento de tema que pueda establecer en Android?


Descubrí cómo hacer esto. El diálogo es en realidad un diálogo nativo aunque se invoque desde WebView .

Por lo tanto, en su WebView debe aplicar un Theme.Dialog personalizado y anular el estilo de diálogo. Vamos a mostrar cómo se puede hacer esto:

Crea un estilo como este:

Aquí está myStyle.xml

<resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="MyDialog" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowBackground">@color/orange_transparent</item> <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item> </style> </resources>

Luego en su WebView puede hacer esto:

<?xml version="1.0" encoding="utf-8"?> <WebView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/webview" style="@style/myStyle" android:layout_width="fill_parent" android:layout_height="fill_parent" />