#android #android-listview
#Android #android-просмотр списка
Вопрос:
У меня есть список в моем приложении. Я поместил фигуру, похожую на фон списка, но при касании прокрутки что-то работает плохо, потому что фон становится черным, а фон фигуры не отображается. Кто-нибудь может мне помочь? Спасибо. Вот мой код:
код списка:
<ListView
android:id="@ id/left_drawer"
android:layout_width="240dp"
android:layout_height="fill_parent"
android:layout_gravity="start"
android:background="@drawable/fondo_menu"
android:choiceMode="singleChoice"
android:divider="@null"
android:listSelector="@android:color/transparent"
/>
list_item:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="58dp"
android:layout_marginBottom="8dp"
android:gravity="center_vertical" >
<ImageView
android:id="@ id/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="12dp"
android:layout_marginRight="12dp"
android:paddingBottom="4dp"
android:paddingTop="4dp"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@ id/title"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:layout_toRightOf="@id/icon"
android:gravity="center_vertical"
android:paddingBottom="10dp"
android:paddingRight="40dp"
android:paddingTop="10dp"
android:textColor="#fff"
android:textSize="25sp" />
<TextView android:id="@ id/counter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="8dp"
/>
</RelativeLayout>
и форма:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#000000"
android:endColor="#2df1bc"
android:angle="45"/>
</shape>
Комментарии:
1. вы хотите, чтобы фон применялся к каждой ячейке в ListView?
2. Я хочу применить фон ко всему списку, а не к каждому элементу списка, спасибо 🙂
3. Большое вам спасибо, работает отлично!!!!
Ответ №1:
просто добавьте атрибут below в ListView
android:cacheColorHint="#00000000"
<ListView
android:id="@ id/left_drawer"
android:layout_width="240dp"
android:layout_height="fill_parent"
android:layout_gravity="start"
android:cacheColorHint="#00000000"
android:background="@drawable/fondo_menu"
android:choiceMode="singleChoice"
android:divider="@null"
android:listSelector="@android:color/transparent"
/>
Ответ №2:
Добавьте атрибут в ListView
тег
android:cacheColorHint="#00000000"
или используйте его программно как
left_drawer.setCacheColorHint(Color.TRANSPARENT);
left_drawer.requestFocus(0);