如何使listview选择项目可选?

时间:2014-12-19 10:19:58

标签: android xml listview android-listview

我正在实施一个无尽的ListView(就像在Facebook应用程序中一样)。我想将项目选为选择(暂时显示背景为灰色)。当我点击列表视图时,没有任何反应(未显示为灰色)。我尝试为我的列表视图内容设置android:focusable="false"android:cickable="false"。但是我没有注意到任何动作我的错是什么?任何人帮助我。提前谢谢。

3 个答案:

答案 0 :(得分:2)

您可以使用一个选择器来完成此操作,您可以将其设置为列表项的背景。

抽拉/ background_list_item.xml

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

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@color/gray" android:state_pressed="true" />
    <item android:drawable="@color/gray" android:state_selected="true" />
    <item android:drawable="@color/gray" android:state_activated="true" />
    <item android:drawable="@color/default_color" /> 
</selector>

布局/ list_item.xml

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

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/background_list_item"
    android:orientation="vertical">

    <... />

</LinearLayout>

答案 1 :(得分:1)

如果要将点击的选项显示为突出显示。不要让clicklistener进行视频转换。使用

      ListView.SetOnclicklistener(..){
        ...
      }

这是删除问题的最佳方法。

答案 2 :(得分:0)

以此为背景:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@color/someGreyColor" android:state_activated="true"/>
    <item android:drawable="@color/anyColor" android:state_pressed="true"/>
    <item android:drawable="@color/backgrounColor"/>

</selector>