Макет элемента представления списка в Android - PullRequest
0 голосов
/ 01 апреля 2012

Я пытаюсь установить фон стрелки вправо, чтобы при нажатии на него отображался только фон вокруг стрелки (до разделителя).

Я пытался сделать это с помощью кнопки изображенияно когда я делаю это так, элемент списка не может быть кликабельным.

это мой макет списка элементов XML:

    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:paddingBottom="5dip"
    android:paddingLeft="2dip"
    android:paddingRight="2dip"
    android:paddingTop="5dip" >

    <ImageView
        android:id="@+id/itemlist_checkedd"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_alignParentLeft="true"
        android:layout_centerVertical="true"
        android:adjustViewBounds="true"
        android:src="@drawable/ic_checkitem" />


    <ImageView
        android:id="@+id/skinpreview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_toRightOf="@id/itemlist_checkedd"
        android:scaleType="fitXY" />

   <ImageButton
        android:id="@+id/skinEdit"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true"
        android:adjustViewBounds="true"
        android:paddingLeft="10dip"
        android:background="@null"
        android:src="@drawable/ic_go_edit" />

    <ImageView 
        android:id="@+id/separator"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_toLeftOf="@id/skinEdit"
        android:layout_marginRight="5dip"
        android:src="@drawable/separator"/>

    <TextView
        android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="2dip"
        android:layout_marginRight="15dip"
        android:layout_toRightOf="@id/skinpreview"
        android:layout_toLeftOf="@id/separator"
        android:textAppearance="?android:attr/textAppearanceLarge" />

Вот как это выглядит:

enter image description here

Любые предложения ???Спасибо.

Ответы [ 2 ]

1 голос
/ 02 апреля 2012

Создание XML-файла селектора в res / drawable

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

Вам нужно будет создать еще одно изображение стрелки с выделенным нужным фоном.

, конечно, затем назначьте свой ImageView srcв XML-файл (arrow_selector.xml), например

1 голос
/ 01 апреля 2012

Просто установите цвет фона или изображение для родительского представления в этом xml

...