Как показать разделитель между прядильщиками? - PullRequest
20 голосов
/ 31 декабря 2010

Я использую списочные представления и расширенные представления, у которых есть разделители, и я могу установить их, но на счетчике похоже, что это не разделитель между элементами.

Кто-то, кто имеет представление о том, как это исправить?

Ответы [ 4 ]

19 голосов
/ 26 июля 2016

Это сработало для меня:

<style name="SpinnerStyle" parent="Widget.AppCompat.ListView.DropDown">
        <item name="android:divider">#d1d1d1</item>
        <item name="android:dividerHeight">0.5dp</item>
    </style>

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="android:dropDownListViewStyle">@style/SpinnerStyle</item>

Преимущество использования этого состоит в том, что это не удаляет эффект ряби при наведении.

14 голосов
/ 16 апреля 2012

Мне удалось найти более правильное решение для этой проблемы (без включения делителя в макет отдельного элемента).

Что вам нужно сделать, это определить в теме вашей деятельности

        <item name="android:dropDownListViewStyle">@style/App.Style.Spinner</item>

, а затем создайте правильный стиль с помощью

   <style name="App.Style.Spinner" parent="@style/Widget.Sherlock.Light.ListView.DropDown">
           <item name="android:dividerHeight">10dip</item>
           <item name="android:divider">@drawable/mydivider</item>
   </style>
7 голосов
/ 13 ноября 2017

Основываясь на ответе @Talihawk, я заставил его работать только для конкретного блесны. Вместо того, чтобы устанавливать свою тему деятельности, установите тему непосредственно для представления прядильщика:

<style name="MatchSpinnerStyle" parent="android:style/Widget.ListView.DropDown">
    <item name="android:divider">#123456</item>
    <item name="android:dividerHeight">1dp</item>
</style>

<style name="MatchSpinnerTheme" parent="AppTheme">
    <item name="android:dropDownListViewStyle">@style/MatchSpinnerStyle</item>
</style>

и

<android.support.v7.widget.AppCompatSpinner
    android:layout_width="match_parent"
    android:layout_height="wrap_content"        
    android:theme="@style/MatchSpinnerTheme"/>
2 голосов
/ 06 января 2011

Для людей с такой же проблемой я почти сдался, у меня появилось представление о том, как получить делитель.

Я добавил разделительную линию внизу моего пользовательского макета для каждого элемента

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout android:id="@+id/RelativeLayout01"
    android:layout_width="fill_parent" android:layout_height="fill_parent"
    xmlns:android="http://schemas.android.com/apk/res/android" style="@style/ListItem2">

    <TextView android:id="@+id/Text" android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:layout_alignParentLeft="true"
        style="@style/SpinnerView_Text" android:paddingLeft="10dip" />

    <ImageView android:id="@+id/icon" android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:src="@drawable/arrowright"
        android:layout_alignParentRight="true" android:layout_centerInParent="true"
        android:layout_marginRight="20dip" />

</RelativeLayout>

<ImageView android:id="@+id/Divider1" android:layout_width="fill_parent"
    android:layout_height="1dip" style="@style/Divider"></ImageView>

...