Dlaczego pod niektórymi aplikacjami jest pusta biała przestrzeń?

11

Wydaje się, że dzieje się tak w każdej aplikacji, która korzysta z pewnego rodzaju funkcji wyświetlania komentarzy.

Tu jest kilka zdjęć. (przepraszam, że nie są to zrzuty ekranu, nie sądzę, że jest to możliwe bez rootowania)

Youtube
Reddit Sync

Dzieje się tak również z każdą inną aplikacją Reddit na rynku. Wszystkie mają dokładnie taki sam problem podczas przeglądania komentarzy.

Zakładam, że istnieje między nimi jakaś kontrola interfejsu użytkownika, coś, co wyświetla tylko pola tekstowe z możliwością odczytu, ale nie jestem programistą Androida, więc nie jestem tego pewien.

Używam Motorola Atrix 2 od AT&T z zapasową pamięcią ROM.

Corey
źródło
Dziwne. Nie jestem pewien, co zasugerować. Wygląda na kolor tła aplikacji. Zwykle programiści wyraźnie to ustawiają lub używają motywu (na przykład Holo). Może używają motywu, a ROM nie ładuje go poprawnie? (Ponieważ motywy są częścią systemu operacyjnego, a nie aplikacji).
Bryan Denny
@BryanDenny: To właściwie jest domyślny motyw na urządzeniach BLUR Motoroli. To naprawdę dziwne, ale zrobili to celowo.
eldarerathis
@eldareathis zgaduję, że aplikacja korzysta z domyślnego motywu Dark .... ale Moto Blur nie robi tego ciemno ???
Bryan Denny

Odpowiedzi:

10

O ile mi wiadomo, właśnie w ten sposób Motorola zaprojektowała interfejs BLUR. Zobacz na przykład ten zrzut ekranu z postu na blogu w witrynie deweloperskiej Motoroli :

wprowadź opis zdjęcia tutaj

Zasadniczo pojawia się wszędzie tam, gdzie programista używa ListViewobiektu, co jest dość powszechne, ponieważ jest to natywny sposób wyświetlania ... no cóż, listy rzeczy (odpowiednio nazwanych, nie?). Motorola opisuje swoje rozumowanie jako takie:

Szare tło u dołu listy jest dziedziczone z motywu urządzenia. Jego celem jest pokazanie użytkownikom, gdzie kończy się lista.

W twoim przypadku szary jest zamiast tego biały (co widziałem również na Droid X), ale ta sama koncepcja ma zastosowanie.

Jeśli chcesz się go pozbyć, po prostu musisz zmienić motyw urządzenia i pozbyć się interfejsu użytkownika BLUR, co na ogół nie jest możliwe bez rootowania i używania niestandardowej pamięci ROM, ponieważ jest ściśle zintegrowana z systemem. Ewentualnie możesz wysłać wiadomość e-mail do programisty i uprzejmie poprosić go o ponowne przesłanie motywu ListView, ponieważ mają oni możliwość jawnego zastąpienia domyślnego motywu , jeśli chcą. Jednak to, czy uważają, że warto podjąć ten wysiłek, jest w pewnym momencie poza twoją kontrolą.

eldarerathis
źródło
2
Ugh, więc miałem rację. To po prostu okropne. Wielu programistów zakłada domyślne kolory, gdy używają motywu, a nie ROM, aby je zepsuć.
Bryan Denny
To ma sens, dziękuję. Nigdzie indziej nie znalazłem żadnych stron w wynikach wyszukiwania tego problemu. Wiem, że niektóre aplikacje, z których korzystam, są w fazie rozwoju i są bardzo otwarte na opinie użytkowników, więc wyślę im wiadomość e-mail na temat problemu.
Corey
Warto również zauważyć, że mam szary kolor, jeśli używam jasnego motywu, a biały kolor, jeśli używam ciemnego motywu.
Corey
1

Programiści niekoniecznie muszą ponownie motywować ListView, aby to naprawić - można to również zrobić, nie zmuszając ListView do wypełnienia ekranu. Problem leży w ListView poniżej - jeśli layout_weight = "1" lub layout_height = "fill_parent", to ListView zajmuje nieużywane miejsce i dostajesz brzydkie białe tło. Ustawienie „layout_height” na „zawijanie zawartości” i pozbycie się wagi rozwiązuje problem.

<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
źródło