Android 如何通过代码实时设置EditTextView光标

news2025/2/25 15:29:06

背景:换肤框架下,QA进行深色浅色切换说输入框光标颜色没有改变,转UI结果UI说需要修改!!!!!

本来有方法可以设置,但是 设置后未生效。重新进入该页面才生效!!!!

mView.setTextCursorDrawable(drawable);

查看内部方法:

通过Editor的loadCursorDrawable方法得知,此前已经有光标背景了则不会进行重新设置了,所以就算你实时通过代码方法setTextCursorDrawable设置了新的,mDrawableForCursor由于之前不为null所以不会重新设置,所以不会生效。

即 mDrawableForCursor = mTextView.getTextCursorDrawable(); 方法不会执行

通过查资料发现只能用反射实现,于是就有了下面代码 

Drawable drawable = SkinCompatVectorResources.getDrawableCompat(mView.getContext(), mTextCursorDrawable);
                try {
                    // Get the editor
                    Field fieldP  = TextView.class.getDeclaredField("mEditor");
                    fieldP.setAccessible(true);
                    Object editorP = fieldP.get(mView);
                    // Set the drawables
                    fieldP = editorP.getClass().getDeclaredField("mDrawableForCursor");
                    fieldP.setAccessible(true);
                    fieldP.set(editorP, drawable);
                } catch (Exception e) {
                    // TODO: handle exception
                    e.printStackTrace();
                }

运行后,成功实时设置光标颜色了!!!!!!!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1901931.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

用Excel处理数据图像,出现交叉怎么办?

一、问题描述 用excel制作X-Y散点图,意外的出现了4个交叉点,而实际上的图表数据是没有交叉的。 二、模拟图表 模拟部分数据,并创建X-Y散点图,数据区域,X轴数据是依次增加的,因此散点图应该是没有交叉的。…

AI大模型时代的存储发展趋势

从2022年下半年,大模型和AIGC这两个词变得极其火热,而GPU的市场也是一卡难求。对于这种迷乱和火热,让我想起了当年的比特币挖矿和IPFS。似乎世界一年一个新风口,比特币、元宇宙、NFT、AIGC,金钱永不眠,IT炒…

拉曼光谱入门:2.拉曼光谱发展史、拉曼效应与试样温度的确定方法

1.拉曼光谱技术发展史 这里用简单的箭头与关键字来概括一下拉曼光谱技术的发展史 1928年:拉曼效应的发现 → 拉曼光谱术的初步应用20世纪40年代:红外光谱术的发展 → 拉曼光谱术的限制20世纪60年代:激光作为光源的引入 → 拉曼光谱术的性能提…

【ARMv8/v9 GIC 系列 1.5 -- Enabling the distribution of interrupts】

请阅读【ARM GICv3/v4 实战学习 】 文章目录 Enabling the distribution of interruptsGIC Distributor 中断组分发控制CPU Interface 中断组分发控制Physical LPIs 的启用Summary Enabling the distribution of interrupts 在ARM GICv3和GICv4体系结构中,中断分发…

Linux操作系统中逻辑卷的缩减

流程:第一步先是要缩减逻辑卷的文件系统。 第二步就是要去缩减逻辑卷的物理边界。 注意事项: 1.逻辑卷要处于卸载状态, 2.建议先备份数据 3.在缩减逻辑卷的时候,要注意xfs文件系统的逻辑卷是不支持直接进行缩减的。 4.在缩减…

2024亚太杯中文赛数学建模B题word+PDF+代码

2024年第十四届亚太地区大学生数学建模竞赛(中文赛项)B题洪水灾害的数据分析与预测:建立指标相关性与多重共线性分析模型、洪水风险分层与预警评价模型、洪水发生概率的非线性预测优化模型,以及大规模样本预测与分布特征分析模型 …

日志自动分析-Web---360星图GoaccessALBAnolog

目录 1、Web-360星图(IIS/Apache/Nginx) 2、Web-GoAccess (任何自定义日志格式字符串) 源码及使用手册 安装goaccess 使用 输出 3-Web-自写脚本(任何自定义日志格式字符串) 4、Web-机器语言analog(任何自定义日…

策略模式的应用

前言 系统有一个需求就是采购员审批注册供应商的信息时,会生成一个供应商的账号,此时需要发送供应商的账号信息(账号、密码)到注册填写的邮箱中,通知供应商账号信息,当时很快就写好了一个工具类&#xff0…

容器:queue(队列)

以下是关于queue容器的总结 1、构造函数&#xff1a;queue [queueName] 2、添加、删除元素: push() 、pop() 3、获取队头/队尾元素&#xff1a;front()、back() 4、获取栈的大小&#xff1a;size() 5、判断栈是否为空&#xff1a;empty() #include <iostream> #include …

论文辅助笔记:ST-LLM

1 时间嵌入 2 PFA&#xff08;Partial Frozen Architecture&#xff09; 3 ST_LLM 3.1 初始化 3.2 forward

[FreeRTOS 内部实现] 事件组

文章目录 事件组结构体创建事件组事件组等待位事件组设置位 事件组结构体 // 路径&#xff1a;Source/event_groups.c typedef struct xEventGroupDefinition {EventBits_t uxEventBits;List_t xTasksWaitingForBits; } EventGroup_t;uxEventBits 中的每一位表示某个事件是否…

CDN节点是什么

CDN 节点是什么 CDN 主要依靠部署在各地的边缘服务器&#xff0c;利用全局负载技术将用户的访问指向距离最近且正常工作的缓存服务器上&#xff0c;用户访问网站时由缓存服务器直接响应用户请求。CDN 节点作为用来缓存数据的服务器&#xff0c;会将用户请求自动指向距离最近的…

微服务: Nacos部署安装与properties配置

Nacos 是阿里巴巴开源的一款用于动态服务发现、配置管理和服务管理的基础设施。Nacos 这个名称源自于 “Dynamic Naming and Configuration Service”。它主要是用于解决微服务架构中服务发现和配置管理的问题。 Nacos 单机模式的部署安装 1. 安装(Windows环境) Nacos是Java…

使用echarts绘制中国地图根据不同的省份划分到指定区域里面中

需求&#xff1a;我们在开发过程中会遇到使用中国地图来划分不同区域省份下面的数量统计情况&#xff0c;但是有时候使用Echarts里面地图功能和我们实际业务需求不匹配的&#xff0c;这个时候就需要我们手动自定义进行划分不同区域下面的省份数据。例如大区1下面有哪些省份&…

Redis---10---SpringBoot集成Redis

SpringBoot集成Redis 总体概述jedis-lettuce-RedisTemplate三者的联系 本地Java连接Redis常见问题&#xff0c;注意 bind配置请注释掉​ 保护模式设置为no​ Linux系统的防火墙设置​ redis服务器的IP地址和密码是否正确​ 忘记写访问redis的服务端口号和auth密码集成Jedis …

如何利用算法优化广告效果

效果广告以超过67%的占比&#xff0c;成为了中国互联网广告预算的大头。在BAT、字节等大的媒体平台上&#xff0c;效果广告以CPC实时竞价广告为主。在这种广告产品的投放中&#xff0c;广告主或其代理公司通过针对每个广告点击出价&#xff0c;系统自动把这些点击出价换算成eCP…

【C++干货基地】C++模板深度解析:进阶技巧与高级特性掌握(按需实例化、全特化与偏特化)文末送书

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 引入 哈喽各位铁汁们好啊&#xff0c;我是博主鸽芷咕《C干货基地》是由我的襄阳家乡零食基地有感而发&#xff0c;不知道各位的…

运维锅总详解CPU

本文从CPU简介、衡量CPU性能指标、单核及多核CPU工作流程、如何平衡 CPU 性能和防止CPU过载、为什么计算密集型任务要选择高频率CPU、超线程技术、CPU历史演进及摩尔定律等方面对CPU进行详细分析。希望对您有所帮助&#xff01; 一、CPU简介 CPU&#xff08;中央处理器&#…

亚马逊自养号实操:搭建高效防砍单IP环境的步骤与技巧

在亚马逊自养号下单的实践中&#xff0c;面对砍单与封号的风险&#xff0c;构建一个稳固且安全的IP网络环境成为了至关重要的一环。以下是一系列精心设计的步骤与策略&#xff0c;主要帮助卖家减少这些风险&#xff0c;确保账号的稳定运行&#xff1a; 一、构建稳固的IP网络环境…

实例演示kafka stream消息流式处理流程及原理

以下结合案例&#xff1a;统计消息中单词出现次数&#xff0c;来测试并说明kafka消息流式处理的执行流程 Maven依赖 <dependencies><dependency><groupId>org.apache.kafka</groupId><artifactId>kafka-streams</artifactId><exclusio…