Почему в некоторых приложениях есть пробел?

11

Похоже, это происходит в любом приложении, которое использует какую-то функцию отображения комментариев.

Вот несколько картинок. (извините, что это не скриншоты, я не думаю, что это возможно без рута)

YouTube
Reddit Sync

Это также происходит с любым другим приложением Reddit на рынке. Все они имеют одинаковую проблему при просмотре комментариев.

Я предполагаю, что между ними есть некоторый общий элемент управления пользовательским интерфейсом, который перечисляет доступные для чтения текстовые области, доступные только для чтения, но я не разработчик Android, поэтому я точно не знаю точно.

Я использую Motorola Atrix 2 от AT & T со стандартным ПЗУ.

Corey
источник
Weird. Не уверен, что предложить. Похоже, что это цвет фона приложения. Обычно разработчики явно устанавливают это или используют тему (например, Holo). Может быть, они используют тему, а ПЗУ загружает ее неправильно? (Потому что Темы являются частью ОС, а не приложения).
Брайан Денни
@BryanDenny: Это на самом деле это тема по умолчанию на смазывание устройств Motorola. Это действительно странно выглядит, но они сделали это намеренно.
eldarerathis
@eldareathis я думаю, что приложение использует тему Dark по умолчанию .... но Moto Blur не делает ее темной ???
Брайан Денни

Ответы:

10

Насколько я знаю, именно так Motorola разработала свой интерфейс BLUR. Посмотрите, например, этот скриншот из поста в блоге на сайте разработчиков Motorola :

введите описание изображения здесь

В основном это проявляется везде, где разработчик использует ListViewобъект, что довольно распространено, поскольку это родной способ отображения ... ну, список вещей (с соответствующим названием, нет?). Motorola описывает их аргументацию так:

Серый фон внизу списка унаследован от темы устройства. Его цель - показать пользователям, где заканчивается список.

В вашем случае серый вместо белого (который я также видел на Droid X), но применяется та же концепция.

Если вы хотите избавиться от него, вам, в основном, нужно изменить тему своего устройства и избавиться от пользовательского интерфейса BLUR, который, как правило, невозможен без рутирования и использования пользовательского ПЗУ из-за его тесной интеграции с системой. В качестве альтернативы, вы можете написать разработчику и вежливо попросить его изменить тему ListView, поскольку у них есть возможность явно переопределить тему по умолчанию, если они этого хотят. Впрочем, считают ли они, что это стоит потраченных усилий, на данный момент не под вашим контролем.

eldarerathis
источник
2
Тьфу, так что я был прав. Это просто ужасно Многие разработчики принимают цвета по умолчанию, когда используют тему, а не ПЗУ, чтобы испортить их.
Брайан Денни
Это имеет смысл, спасибо. Я не смог найти ни одной страницы в моих поисках по этой проблеме где-либо еще. Я знаю, что некоторые приложения, которые я использую, находятся в активной разработке и очень восприимчивы к отзывам пользователей, поэтому я напишу им по электронной почте о проблеме.
Кори
Также отметим, что я получаю серый цвет, если я использую светлую тему, и белый цвет, если я использую темную тему.
Кори
1

Разработчикам не обязательно менять тему ListView, чтобы исправить это - это также можно сделать, не заставляя ListView заполнять экран. Проблема в ListView ниже - если layout_weight = "1" или layout_height = "fill_parent", то ListView занимает все неиспользуемое пространство, и вы получаете уродливый белый фон. Установка layout_height для «оборачивания содержимого» и избавления от веса решает проблему.

<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
источник