gpt4 book ai didi

Android - 我为 listView 设置了自定义背景,但突出显示消失了

转载 作者:行者123 更新时间:2023-11-29 16:25:10 25 4
gpt4 key购买 nike

好的,现在这是我的 SimpleAdapter 的 getView 函数:

    @Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);

view.setBackgroundColor(R.drawable.color1);

return view;
}
}

这是我的 color1.xml 文件,在 res/drawable-lpi 文件夹中:

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

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:color="#FFFF00FF"/> <!-- pressed -->

<item android:state_selected="true"
android:color="#FF0000FF"/> <!-- selected -->

<item android:state_focused="true"
android:color="#FF0000FF"/> <!-- focused -->

<item android:color="#FFFFFFFF"/> <!-- default -->
</selector>

为什么我还是得到这个?

enter image description here

最佳答案

首先你要知道一个View的所有背景设置函数,实际上都是改变它的background-drawable。

当您使用 highlight.xml 调用 setBackgroundColor 时,您实际上是在尝试使用生成的 R.drawable.highlight ID 的值创建一个 ColorDrawable。

实际上需要调用setBackgroundResource方法,相当于"android:background"XML标签。

您的 highlight.xml 实际上是一个状态列表,它是 StateListDrawable 的一个实例.如果你只想改变颜色,你可以使用 color-state-list .

关于Android - 我为 listView 设置了自定义背景,但突出显示消失了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4795562/

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