Добавление разделителей между элементами списка ящиков

У меня есть навигационный ящик, в котором стиль элементов списка установлен на R.layout.drawer_list_item.

mDrawerList.setAdapter ( new ArrayAdapter<String> ( this, R.layout.drawer_list_item, mDrawerTitles ) );

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

Стиль элемента списка:

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:paddingBottom="16dp"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#000000" />

Делитель:

 <View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="@android:color/darker_gray"/>

person abc32112    schedule 03.12.2013    source источник
comment
Вы пытались использовать атрибут android:divider="@drawable/some_image" xml?   -  person tyczj    schedule 03.12.2013
comment
ааа.... в список!   -  person abc32112    schedule 03.12.2013


Ответы (2)


Посмотрите на этот вопрос: Как правильно спроектировать/стилизовать навигацию Android Ящик

Вы можете добавить эти атрибуты в ListView:

android:divider="#FFFFFF"
android:dividerHeight="1dp"
person Siu    schedule 03.12.2013

Вы пытаетесь использовать xml, который является вашим разделителем стилей. Например

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
    <shape>
        <gradient
            android:angle="0"
            android:centerColor="#999999"
            android:endColor="#555555"
            android:height="1px"
            android:startColor="#555555" />
    </shape>
</item>

</layer-list>

В вашем списке (в XML) используйте это

<ListView
     android:id="@+id/listaFondos"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:cacheColorHint="#00000000"
     android:divider="@drawable/list_divider"
     android:dividerHeight="1dip" >
</ListView>

И в вашем Java-коде вы можете использовать это

private ListView YourListview;

YourListview = (ListView) findViewById(R.id.YourListview);

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.drawer_list_item, mDrawerTitles);
        listaFondos.setAdapter(adapter);

drawer_list_item — это xml с вашим текстовым представлением.

Я надеюсь помочь вам.

И извините за мой английский.

person Crash    schedule 03.12.2013