¿Por qué hay un espacio en blanco en blanco debajo de algunas aplicaciones?

11

Esto parece suceder en cualquier aplicación que use algún tipo de comentario.

Aquí hay algunas fotos. (lo siento, no son capturas de pantalla, no creo que sea posible sin root)

Youtube
Reddit Sync

Esto también sucede con todas las demás aplicaciones de Reddit en el mercado. Todos tienen exactamente el mismo problema al ver los comentarios.

Supongo que hay algún control de IU en común entre ellos, algo que enumera áreas de texto de solo lectura que se pueden tocar, pero no soy un desarrollador de Android, así que no estoy seguro.

Estoy usando un Motorola Atrix 2 de AT&T con stock ROM.

Corey
fuente
Extraño. No estoy seguro de qué sugerir. Parece ser el color de fondo de la aplicación. Por lo general, los desarrolladores establecen esto explícitamente o usan un tema (por ejemplo, Holo). ¿Quizás están usando un tema y la ROM no lo carga correctamente? (Debido a que los Temas son parte del sistema operativo, no la aplicación).
Bryan Denny
@BryanDenny: Ese es realmente el tema predeterminado en los dispositivos BLUR de Motorola. Tiene un aspecto realmente extraño, pero lo hicieron intencionalmente.
eldarerathis
@eldareathis, supongo que la aplicación está usando el tema oscuro predeterminado ... ¿pero Moto Blur no está oscureciendo?
Bryan Denny

Respuestas:

10

Hasta donde sé, esta es la forma en que Motorola diseñó su interfaz BLUR. Vea, por ejemplo, esta captura de pantalla de una publicación de blog en el sitio de desarrollo de Motorola :

ingrese la descripción de la imagen aquí

Básicamente, esto aparece en cualquier lugar donde un desarrollador usa un ListViewobjeto, lo cual es bastante común, ya que es la forma nativa de mostrar ... bueno, una lista de cosas (con el nombre apropiado, ¿no?). Motorola describe su razonamiento como tal:

El fondo gris en la parte inferior de la lista se hereda del tema del dispositivo. Su propósito es mostrar a los usuarios dónde termina la lista.

En su caso, el gris es blanco (que también he visto en el Droid X), pero se aplica el mismo concepto.

Si desea deshacerse de él, básicamente necesita cambiar el tema de su dispositivo y deshacerse de la interfaz de usuario BLUR, que generalmente no es posible sin rootear y usar una ROM personalizada debido a su estrecha integración en el sistema. Alternativamente, puede enviar un correo electrónico al desarrollador y pedirle cortésmente que cambie el tema ListView, ya que tienen la opción de anular explícitamente la temática predeterminada si lo desean. Sin embargo, si piensan o no que vale la pena el esfuerzo está fuera de su control en ese momento.

eldarerathis
fuente
2
Ugh, así que tenía razón. Eso es simplemente horrible. Muchos desarrolladores asumen los colores predeterminados cuando usan un tema, no para que una ROM los estropee.
Bryan Denny
Esto tiene sentido, gracias. No he podido encontrar ninguna página en mis búsquedas sobre este problema en ningún otro lado. Sé que algunas de las aplicaciones que uso están en desarrollo activo y son muy receptivas a los comentarios de los usuarios, así que les enviaré un correo electrónico sobre el problema.
Corey
También para tener en cuenta, obtengo un color gris si estoy usando un tema claro, y un color blanco si estoy usando un tema oscuro.
Corey
1

Los desarrolladores no necesariamente tienen que cambiar el tema de ListView para solucionar esto; también se puede hacer sin forzar ListView a llenar la pantalla. El problema está en ListView a continuación: si layout_weight = "1" o layout_height = "fill_parent", ListView ocupa cualquier espacio no utilizado y se obtiene el fondo blanco feo. Establecer layout_height para "envolver contenido" y deshacerse del peso resuelve el problema.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical">

<ListView android:id="@+id/statsList"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"/>

</LinearLayout>
TimK
fuente