Разделитель сетки Android, рисуемый между изображениями

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

Кто-нибудь поможет мне, как добавить.?


person Vishwanath.M    schedule 12.09.2012    source источник


Ответы (1)


попробуй эту надежду помоги

list_item.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="horizontal"
    android:background="@drawable/list_selector">

    <!-- Cell contents -->

</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="true" 
        android:drawable="@drawable/item_border_selected" 
    />
    <item 
        android:state_pressed="true" 
        android:drawable="@drawable/item_border_selected" 
    />
    <item
        android:drawable="@drawable/item_border" 
    />
</selector>

item_border.xml

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid 
        android:color="@android:color/transparent" 
    />
    <stroke 
        android:width="1px" 
        android:color="@color/list_divider" 
    />
</shape>

item_border_selected.xml

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid 
        android:color="@color/list_select" 
    />
    <stroke 
        android:width="1px" 
        android:color="@color/list_divider" 
    />
</shape>

items_view.xml

<?xml version="1.0" encoding="utf-8"?>
<GridView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_marginLeft="-1px"
    android:layout_marginRight="-1px"
    android:listSelector="@android:color/transparent"
/>

Поскольку все линии удваиваются в размере по мере того, как они соединяются с соседними ячейками, я сделал размер разделителя 1px вместо 1dp, чтобы он не казался слишком большим на некоторых экранах. Кроме того, я сделал вид сетки с отрицательными полями, чтобы скрыть линии с обеих сторон. Я надеюсь, что это кому-то поможет.

person Deepak Swami    schedule 12.09.2012
comment
У меня есть изображение в папке с возможностью рисования, мне нужно добавить это изображение в качестве разделителя между изображениями сетки, установив ширину и высоту изображения на 2dp и 128dp. Думаю, ваш ответ не подходит для моего требования. - person Vishwanath.M; 12.09.2012
comment
См. аналог здесь: stackoverflow.com/a/7304166/435605. Оба ответа очень похожи с разницей в год. Я блуждаю, если это было скопировано без указания авторства... - person AlikElzin-kilaka; 29.10.2012
comment
@kilaka Эй, друг, ты можешь увидеть слово отсюда в конце моего ответа, а также то, что я не обновил свой ответ. Хорошо, ответы похожи, но я уже отдал должное оригинальному ответу. Пожалуйста, проверьте сначала после комментария. - person Deepak Swami; 06.08.2013