【Android】ListView 点击拖动出现变黑和黑色边

Android ListView拖动时背景颜色异常的解决办法 这是由于ListView在进行拖动时,会使用系统默认的拖动背景,而该背景颜色默认为黑色,色默认为黑色,从而导色,从而导致为黑色,从而导致背景导致背景异常的问题。拖动开始时,我们将背景设置为自定义拖动背景,拖动结束时,我们将背景重置为透明。请注意,上述代码中的"@color/drag_background_color"是一个占位符,你需要将其替换为你想要的拖动背景颜色的资源引用。要解决这个问题,我们需要自定义ListView的拖动背景,以确保背景颜色与我们的应用主题保持一致。步骤 1: 创建自定义拖动背景。 阅读详情

在开发过程中,经常会使用到ListView控件,然后自定义ListItem,与此同时,如果想给ListView添加图片背景或颜色可通过设置background属性实现,但是通过background属性设置背景后,会使点击ListView中的Item拖动出现变黑或黑色边。

要解决这个问题,此时,只需要在ListView控件中添加android:cacheColorHint="#00000000"即可,该语句是将item的背景设置为透明。

另外,如果要设置ListItem的颜色,而不是整个ListView,只要在自定义ListItem时直接设置颜色或背景既可,但是这样子同时会出现问题。虽然不会变黑,但会出现点击item不会有点击效果。

解决方案:

定义selector,即用XML分别设置按下和没按下的背景效果,样例如下

 

 

<?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/list_bg_focus" />      

    <item android:state_focused="true" 

        android:drawable="@drawable/list_bg_focus" />  

    <item android:state_pressed="false" android:state_focused ="false"  

        android:drawable="@drawable/list_bg_normal" /> 

</selector> 

在ListItem父控件中添加android:background="@drawable/list_item_selected"

 

ListItem背景默认是透明的,但是设置了ListView的背景后,每次拖动Item都要和ListView背景做运算,android系统为了优化这个过程,就使用了cacheColorHint属性,在黑色主题下默认的颜色值为#191919,就会出现变黑的情况。

CListCtrl重绘、支持拖拽功能 完美支持单个以及多个item的拖放功能。而且添加了拖动轨迹! 立即下载

相关推荐

自定义 view拖动的时候花屏残影问题

自定义viewGrop ,可以动态添加View到ViewGroup,点击后可以自由拖动,

android listView滚动时隔行出现黑色分割线

近日在做android应用时,出现了一个很小但容易忽视的问题。ListView滚动时隔行出现分割线,分割线的出现影响了界面的美观,经过排除后发现是一个细节问题引起。 listview未滚动时,如下图:  listview滚动时出现,如下图 也许你以为使用 android:cacheColorHint="#00000000"能解决问题,其实不然...

zhengchunlian的博客 281

Android之ListView控件

Android之ListView控件 ListView类 ListView的主要属性 stackFromBottom,设置为true时,内容将从底部开始显示 cacheColorHint,设置为#00000000透明时,可以避免拖动时背景显示黑色的问题 divider,设置分割线,#00000000或@null分割线被隐藏 fadingEdge,设置为none,去除上边和下边的阴影 scrollbars,设置为none,隐藏滚动条 ListView介绍 ListView组件可以实现循环显示自定义组件的功能。 首先在显示ListView的XML文件里声明一个ListView: 在主函数中调用

CListCtrl控件实现Item项拖拽效果:让界面交互更灵活

CListCtrl控件实现Item项拖拽效果:让界面交互更灵活 去发现同类优质开源项目:https://gitcode.com/ CListCtrl控件实现Item项拖拽效果,为列表操作带来革命性变革。本文将深入剖析项目的核心功能,技术实现,应用场景及独特优势。 项目介绍 在现代软件界面设计中,用户交互的便捷性和直观性至关重要。CListCtrl控件实现Item项拖拽效果项目,正是为了满足这一需求...

gitblog_06754的博客 983

汽车电子电气架构

控制器:从多独立 ECU → 域控制器(DCU) → 中央计算平台 + 区域控制器,硬件集成度持续提升,冗余减少;算力:从分散无集中算力 → 按域分配算力 → 全域算力集中,算力量级从 MIPS 跃升至 TOPS,支撑高阶智驾;网络:从低速 CAN/LIN 独占 → 以太网为主、总线为辅 → 高速以太网主干,数据传输速率提升千倍;软硬件:从软硬件深度绑定 → 初步解耦 → 完全解耦(SOA),实现 “硬件预埋、软件解锁”;线束。

LXY_LXY_的博客 1437

CrossOver实战:在Mac上流畅运行《梦幻西游》端游与搬砖指南

在跨平台应用开发与系统兼容性领域,如何让为特定操作系统设计的软件在其他平台上运行,是一个经典的技术挑战。其核心原理在于通过兼容层或转译技术,将程序的系统调用和图形接口指令实时转换为目标系统能理解的格式。这项技术的价值在于极大地扩展了硬件设备的软件生态,让用户无需依赖虚拟机或双系统即可无缝使用关键应用。在游戏、专业工具等场景中,这能显著提升工作效率和用户体验。本文以经典端游《梦幻西游》为例,详细解析如何在搭载Apple Silicon或Intel芯片的Mac上,借助CrossOver这一成熟的兼容层方案,构建

weixin_30129025的博客 564

Android ListView(GridView) 滑动 拖动 背景为黑色的解决办法

Android ListView 滑动背景为黑色的解决办法 在Android中,ListView是最常用的一个控件,在做UI设计的时候,很多人希望能够改变一下它的背景,使他能够符合整体的UI设计,改变背景背很简单只需要准备一张图片然后指定属性 android:background="@drawable/bg",不过不要高兴地太早,当你这么做以后,发现背景是变了,但是当你拖动,或者点击list空白

fanwenda的专栏 2073

基于LangGraph的智能报告生成平台项目分析

不知道你是否知道或者了解OpenAI and Gemini Deep Research。他们是一种能够根据输入问题进行规划、结合网络搜索获取信息并最终呈现结果的研究工具或技术。那这样research是如何实现的呢?最近刚好看到一个实现类似功能的开源项目: open_deep_search。本文将基于该项目进行代码层面剖析。

u011160113的博客 923

Android Listview 点击不变色 和 拖动 黑色问题

第一种方法: 针对Listview 的设置:android:listSelector="@android:color/transparent"  第二种方法: 针对Listview里的item的设置: 1.给item增加一个背景色:android:background="@drawable/list_item_bg"  2.xml 文件: <selector xmlns:andr

LiLi_ko的专栏 1282

爬虫实战:拆解WASM加密参数,破局2026电商动态接口反爬(实测某头部电商可用)

sign和wasm_token,而且每次请求这两个参数都在动态变化。用常规的参数拼接、MD5加密尝试还原,结果全是403;反编译前端JS,发现核心加密逻辑被打包成了.wasm,把关键参数加密、签名逻辑藏在二进制模块里,让爬虫无法直接逆向JS拿到加密规则。前后折腾了5天,从WASM文件解析、JS与WASM交互逻辑拆解,到本地还原加密参数、实战验证,踩了无数坑(比如WASM版本不兼容、内存数据读取失败、加密依赖环境缺失),最终成功还原了加密流程,稳定爬取商品详情、价格、销量等核心数据,连续运行72小时无封禁。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1913

在Simulink中实现一个基于SiC MOSFET的高效率电机驱动系统

本文介绍了在Simulink中构建基于SiC MOSFET的高效率电机驱动系统的详细流程。系统由直流电源模块、SiC MOSFET逆变器模块、PMSM电机模型、控制策略模块(包括矢量控制和PWM生成)以及反馈测量模块组成。文章逐步指导了从模型创建到参数设置的完整过程,包括各模块的具体实现方法。通过仿真可以评估系统在不同负载条件下的响应速度、效率、功率密度等性能指标。该建模方法为电机驱动系统的设计和优化提供了有效工具,同时建议根据实际硬件规格和工程需求进行参数调整和定制化开发。

xiaoheshang_123的博客 249

android listview 拖动 背景变黑

一般这种情况是在android 4.0一下版本会出现,在4.0内系统已经优化listview 但是还是建议把这些属性加上。 触摸拖动list列表时,背景一片黑色。(增加相关属性) listView.setCacheColorHint(Color.TRANSPARENT); //设置点击时背景为...

churanxian6085的博客 205

R语言 百度坐标转换至WGS84坐标

本文利用R语言封装了百度坐标转换至WGS84坐标的函数,亲测有效,提供了便捷的百度坐标转换方法。

qingchen98的博客 2135

ListView拖动时背景变黑的问题

ListView拖动时背景变黑的问题

zzfenglin的博客 980

YOLOv8改进 | 主干网络 | 将主干网络替换为轻量化的ShuffleNetv2【原理 + 完整代码】

yolov8,yolov8创新,yolov8改进

kay_545 2565

Altium Designer(AD24/25)导出DXF或DWG结构文件的方法

DXF(Drawing Exchange Format)和DWG(Drawing)是两种常见的CAD(计算机辅助设计)文件格式,常用于结构和硬件之间的沟通。本文介绍Altium Designer(AD24/25)导出DXF或DWG结构文件的方法。

fydar的博客 2327

Android ListView滑动后背景变黑问题解决方法

Android ListView存在滑动后背景变黑问题

ccpat的专栏 4363

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

android中ListView拖动时背景黑色的问题

     前几天我做项目的时候,曾经遇到过这个问题,当我拖动列表的时候,会发现ListView的背景一片黑色,而且所有被选中的文字都变成一片漆黑。改了好几种方式都没解决,没把我搞死,后来还是问同事才把它解决掉。今天在网上看到讲解这个问题的博客,发现它说的解决办法和我的解决办法一样。为了让自己以后不再在这些小问题上卡住,特此写篇博客记住。其实,这个问题发生的原因在于ListView存在缓存颜色机制,

zhangyupeng_hehe的专栏 4976

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

解决Android的ListView控件滚动时背景变黑

  在Android中,ListView是最常用的一个控件,在做UI设计的时候,很多人希望能够改变一下它的背景,使他能够符合整体的UI设计,改变背景背很简单只需要准备一张图片然后指定属性android:background="@drawable/bg",不过不要高兴地太早,当你这么做以后,发现背景是变了,但是当你拖动,或者点击list空白位置的时候发现ListItem都变成黑色的了,破...

dianzou5287的博客 173

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Android ListView拖动时背景变黑的解决方法

如果大家在非黑色背景下使用ListView控件时,Android默认可能在滚动ListView时这个列表控件的背景突然变成黑色。这样可能导致程序的黑色的背景和主程序的主题既不协调。解决的方法Google在设计Android时也考虑了,在Layout的ListView中加入 android:cacheColorHint="#00000000" 的属性即可。

今天 1786

listview拖动时背景变黑的问题

Android为我们提供了ListView 的多种实现方法,通过自定义显示布局让显示的内容更加美观,但是我们会发现这样一个问题,当我们操作ListView的时候,如果不使用手机上下按键的时候,直接用触摸拖动视图的方式,会发现ListView的背景一片黑色,而且所有被选中的文字都变成一片漆黑。 其实这个问题发生的原因在于ListView存在缓存颜色机制,因此我们可以通过设定缓存颜色为透明的方法来解

Ansionnal的专栏 677

Android ListView拖动时背景颜色会变成黑色 的解决办法

现象:ListView拖动时,背景颜色会变成黑色   我们看看API 文档是怎么说 通过查找API 文档找到这个函数 public void setCacheColorHint (int color) Since: API Level 1 When set to a non-zero value, the cache color hint indicat

菲利克斯猫(Felix.mao)的IT技术专栏 6489

android-listview拖动时背景变黑的问题

Android为我们提供了ListView 的多种实现方法,通过自定义显示布局让显示的内容更加美观,但是我们会发现这样一个问题,当我们操作ListView的时候,如果不使用手机上下按键的时候,直接用触摸拖动视图的方式,会发现ListView的背景一片黑色,而且所有被选中的文字都变成一片漆黑。 其实这个问题发生的原因在于ListView存在缓存颜色机制,因此我们可以通过设定缓存颜色为透明的方法

Central-Perk的专栏 4088

Android ListView滑动时背景变黑

现象:Android 3.0以下版本设备上,当我们操作ListView的时候,直接用触摸拖动视图的方式,可能会发现ListView的背景一片黑色,而且所有被选中的文字都变成一片漆黑。原因:在于ListView存在缓存颜色机制 解决方法:可以通过设定缓存颜色为透明的方法来解决这个问题1、通过布局属性来设定(ListView的属性中直接定义) android:cacheColorHint=”#0

xpz445094213的博客 552

android ListView拖动时背景为黑色的解决方法

<br />在ListView有背景图片时,如果拖动它,会发现背景为黑色,这个问题可以用下面的方法解决<br />xml布局文件里设置为:<br />android:cacheColorHint="#00000000" <br />java代码里设置为:listView.setCacheColorHint(0);

CBirdLG的专栏 1498
上一篇: 【Android】AndroidManifest.xml之元素manifest
下一篇: 【Android开发】功能模块化之生成验证码Bitmap
会写代码的饭桶
博客等级 码龄18年 310粉丝 128原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值