gpt4 book ai didi

android - 列表背景的自定义选择器

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:55:55 27 4
gpt4 key购买 nike

我正在尝试为 ListView 中的每个项目设置一些自定义选择器状态。我尝试了以下"

列表选择器.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true"
android:drawable="@drawable/row_selected_background" />
<item android:state_activated="true"
android:drawable="@drawable/row_selected_background" />
<item android:state_focused="true"
android:drawable="@drawable/row_selected_background" />
<item android:drawable="@drawable/row_background" />
</selector>

列表.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<ListView
android:id="@android:id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/row_background"
android:listSelector="@drawable/list_selector">

</ListView>
</RelativeLayout>

由于某种原因,列表未选中的背景颜色与定义的一样。但是按下/单击始终是列表的默认 android holo 蓝色。我做错了什么?

最佳答案

使用 android:state_pressed 指定按下状态。


要使用的可绘制对象:/res/drawable/bg.xml

<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@android:color/holo_red_dark"/>
</shape>

要使用的选择器:/res/drawable/item.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/bg"/>
</selector>

ListView :

    <ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:saveEnabled="true"
android:listSelector="@drawable/item"
/>

按下列表项的结果:

enter image description here

注意:列表选择器绘制在 Item View 后面,Item View 可能有自己的背景。

关于android - 列表背景的自定义选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18386035/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com