Android-listview проблема с прозрачными ячейками - PullRequest
2 голосов
/ 31 марта 2011

Я хочу сделать просмотр списка с полупрозрачными ячейками (своего рода синий с непрозрачностью 25%).

Представление списка создано правильно, но когда я выполняю движение прокрутки (я нажимаю и перетаскиваю вниз или вверх), список, кажется, активирует какой-то механизм выбора, который применяет черный и непрозрачный фон к списку.

Есть идеи, как мне от этого избавиться?

Ниже приведен код и два экрана:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:orientation="vertical" android:background="@drawable/background">
<ImageView android:layout_width="wrap_content"
    android:layout_height="wrap_content" android:background="@drawable/my_health_title">
</ImageView>
<ListView android:id="@+id/health" android:layout_width="wrap_content"
    android:layout_height="wrap_content">
</ListView>

<TextView android:id="@+id/health_title" android:layout_width="wrap_content"
    android:layout_height="wrap_content" android:textColor="#46727c"
    android:textSize="14sp" android:textStyle="bold"
    android:layout_marginTop="20dp" android:layout_marginLeft="30px"
    android:text="Blood presure Profile">
</TextView>

<LinearLayout android:id="@+id/health_gauge"
    android:layout_width="250dp" android:layout_height="35dp"
    android:layout_centerVertical="true" android:layout_marginLeft="20dp">
</LinearLayout>

<TextView android:id="@+id/health_description"
    android:layout_width="wrap_content" android:layout_height="wrap_content"
    android:textColor="#46727c" android:textSize="12sp" android:textStyle="normal"
    android:layout_marginTop="150px" android:layout_marginLeft="30px"
    android:text="Looks Goood">
</TextView>

<ImageView android:id="@+id/health_details"
    android:background="@drawable/home_arrow_icon_margin"
    android:layout_width="wrap_content" android:layout_height="wrap_content"
    android:layout_alignParentRight="true" android:layout_centerVertical="true">
</ImageView>

обычный список

выбранный эффект

Ответы [ 2 ]

3 голосов
/ 21 ноября 2011

У меня был кошмар с похожей проблемой. Но я добавлял ListView динамически, и

android:cacheColorHint="#00000000"

не сработало в этом случае. Решение:

Не добавляйте ListView динамически, cacheColorHint не будет работать

Надеюсь, это кому-нибудь поможет!

2 голосов
/ 01 апреля 2011

Просто установите android: cacheColorHint на # 00000000 в ListView.

Обратите внимание, что цветовой код представляет собой 8-значный код ( # AARRGGBB), что означает, что первые две цифры представляют альфа цвета.(Если вы установите его на 6 цифр, # 000000 это не поможет, потому что оно все еще непрозрачно. Для получения дополнительной информации о цветовых кодах нажмите здесь ).

Ваш список просмотрадолжно выглядеть так:

<ListView android:id="@+id/health" android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:cacheColorHint="#00000000">
</ListView>

Более подробную информацию и объяснения можно найти здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...