Обычный стиль списка и стиль наведения в андроиде

Это моя кодирующая часть:

listview.xml:

<?xml version="1.0" encoding="utf-8"?> <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/list" android:layout_width="fill_parent" android:layout_height="0dp" android:divider="#FFFFFF" android:dividerHeight="7dp" android:layout_weight="1" android:listSelector="@drawable/list_selector" /> </LinearLayout> 

List_selector.xml файл:

 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/gradient_bg" /> <item android:state_pressed="true" android:drawable="@drawable/gradient_bg_hover" /> <item android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/gradient_bg_hover" /> </selector> 

gradient_bg.xml:

 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <gradient android:startColor="#e8eef4" android:centerColor="#fdfdfd" android:endColor="#d3dfe8" android:angle="270" /> <stroke android:width="1dp" android:color="#b7ccdd" /> <padding android:left="6dp" android:top="6dp" android:right="6dp" android:bottom="6dp" /> <margin android:left="15dp" android:top="15dp" android:right="15dp" android:bottom="15dp" /> <corners android:radius="4dp" /> </shape> 

gradient_bg_hover.xml:

 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <gradient android:startColor="#ffe181" android:centerColor="#f5cd4a" android:endColor="#e8c34e" android:angle="270" /> <stroke android:width="1dp" android:color="#e3b52c" /> <padding android:left="6dp" android:top="6dp" android:right="6dp" android:bottom="6dp" /> <margin android:left="15dp" android:top="15dp" android:right="15dp" android:bottom="15dp" /> <corners android:radius="4dp" /> </shape> 

Здесь я получил o / p: Введите описание изображения здесь

Но я хочу использовать o / p как: Введите описание изображения здесь

Пожалуйста, сравните состояние зависания на обоих изображениях и дайте мне решение для этого.

listview.xml

 <?xml version="1.0" encoding="utf-8"?> <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/list" android:layout_width="fill_parent" android:layout_height="wrap_content" android:divider="#FFFFFF" android:dividerHeight="1dp" android:listSelector="@drawable/list_selector" /> </LinearLayout> 1 <?xml version="1.0" encoding="utf-8"?> <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/list" android:layout_width="fill_parent" android:layout_height="wrap_content" android:divider="#FFFFFF" android:dividerHeight="1dp" android:listSelector="@drawable/list_selector" /> </LinearLayout> 

list_selector.xml

 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- Selector style for listrow --> <item android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/gradient_bg" /> <item android:state_pressed="true" android:drawable="@drawable/gradient_bg_hover" /> <item android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/gradient_bg_hover" /> </selector> 

gradient_bg.xml

 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <!-- Gradient Bg for listrow --> <gradient android:startColor="#f1f1f2" android:centerColor="#e7e7e8" android:endColor="#cfcfcf" android:angle="270" /> </shape> 

gradient_bg_hover.xml

 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <!-- Gradient BgColor for listrow Selected --> <gradient android:startColor="#18d7e5" android:centerColor="#16cedb" android:endColor="#09adb9" android:angle="270" /> </shape> 

Вы не используете сфокусированное состояние, попробуйте использовать приведенный ниже код

 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- Active tab --> <item android:state_selected="true" android:state_focused="false" android:state_pressed="false" android:drawable="@drawable/gradient_bg_hover" /> <!-- Inactive tab --> <item android:state_selected="false" android:state_focused="false" android:state_pressed="false" android:drawable="@drawable/gradient_bg" /> <!-- Pressed tab --> <item android:state_pressed="true" android:drawable="@drawable/gradient_bg_hover" /> <!-- Selected tab (using d-pad) --> <item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/gradient_bg_hover" /> </selector> 

Поздно, но для других 🙂

Вам нужно настроить селектор для вашего списка на прозрачный цвет

 listView.setSelector(R.color.transparent); 

В color.xml просто добавьте следующее

 <color name="transparent">#00000000</color> 

Удалить прокладку из gradient_bg_hover.xml & gradient_bg.xml

И вместо этого Put Padding в ListView Like:

 <ListView android:id="@+id/Sales_List" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerHorizontal="true" **android:paddingLeft="6dp" android:paddingTop="6dp" android:paddingRight="6dp" android:paddingBottom="6dp"** android:dividerHeight="7dp" android:divider="@android:color/transparent" android:listSelector="@drawable/listviewselect"> 

Он должен работать

Intereting Posts
Google maps v2 не отображается после публикации на игровом рынке 16 секунд до тех пор, пока не будет обнаружен запрос Bluetooth-разъединения Получать широковещательную передачу, когда SD-карта размонтирует андроид ПРЕДУПРЕЖДЕНИЕ: не указана цель, развертывание в эмуляторе Android: Вставить текст в EditText в текущей позиции Перетаскивание с анимацией onDraglistener, чтобы вернуться в исходное положение, если не выпало на цель Как уменьшить расстояние между текстами в макете Android? Изменить цвет текста предпочтения Java.lang.RuntimeException: Ошибка предоставления результата ResultInfo {who = null, request = 64206, result = -1, data = Intent AsyncTask загрузка изображения RecyclerView Получите уведомление о отправленном письме в onActivityResult «Android» Android NDK создает необоснованные большие двоичные файлы, как оптимизировать размер .so? Позиция MediaController с setAnchorView Поиск реализации XmlResourceParser @TargetApi (Build.VERSION_CODES.GINGERBREAD) Что указывает этот код в android