android searchview光标,android – 在没有ActionBarSherlock的情况下更改SearchView中的光标颜色...
我试图在ICS中的SearchView小部件上更改闪烁光标的颜色.我尝试过以下方法:
>添加< item name =“android:textCursorDrawable”> @ null< / item>对我的
主题
>将AutoCompleteTextViews的样式添加到我的主题,并将该样式的textCursorAttribute设置为@null
>直接在SearchView上设置android:textCursorDrawable =“@ null”
我在这里阅读了答案(Custom cursor color in SearchView),但是对于searchAutoCompleteTextView没有非ABS样式,所以无法尝试这个.我也找了一个Java方法来设置文本光标drawable,但找不到 – 我正在修改Java中SearchView的其他方面,如果有可用的方法,可以用光标这样做.
我已经非常广泛地定制了SearchView,但最后一个改变是让它看起来不正确 – 光标在白色背景上是白色的,所以它不容易看到.我可以尝试其他任何想法吗?
解决方法:
基于上面的评论和答案,我举了一个例子,说明了如何使用反射.这解决了我的应用程序中的问题.希望它能节省一些时间.
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.entity_list_actions, menu);
final SearchView searchView = (SearchView) menu.findItem(R.id.search).getActionView();
final int textViewID = searchView.getContext().getResources().getIdentifier("android:id/search_src_text",null, null);
final AutoCompleteTextView searchTextView = (AutoCompleteTextView) searchView.findViewById(textViewID);
try {
Field mCursorDrawableRes = TextView.class.getDeclaredField("mCursorDrawableRes");
mCursorDrawableRes.setAccessible(true);
mCursorDrawableRes.set(searchTextView, 0); //This sets the cursor resource ID to 0 or @null which will make it visible on white background
} catch (Exception e) {}
return super.onCreateOptionsMenu(menu);
}
该0可以是任何其他资源ID,如R.drawable.my_cursor
标签:android,searchview
来源: https://codeday.me/bug/20190925/1816167.html
android searchview光标,android – 在没有ActionBarSherlock的情况下更改SearchView中的光标颜色...相关推荐
- android 熄屏后仍然可以点击,Android - 在不触发睡眠/锁定屏幕的情况下关闭显示屏 - 使用触摸屏打开...
我一直在试图找到一种方法来关闭显示屏,并从用户触摸触摸屏时唤醒. 设备处于嵌入式环境中,其中设备是平板电脑,用户除了触摸屏外无法访问任何内容(根本没有按钮).Android - 在不触发睡眠/锁定屏幕 ...
- RK3328 Android 7.1 录音左右声道分离的情况下,有时候会出现,右声道的声音和左声道一样的问题
RK3328 Android 7.1 录音左右声道分离的情况下,有时候会出现,右声道的声音和左声道一样的问题 问题现象: 产品有语音识别功能,需要回音消除,所以立体声录音需要左右声道分离,左声道为主M ...
- android 显示canvas,【报Bug】部分情况下,安卓canvas不显示
详细问题描述 (DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题) [内容] uni2.2.2版 ...
- android微信keydown事件的keyCode为0情况下JS输入约束实现
因为微信不支持keypress事件,keydown/keyup的keycode又为0,没有办法通过这些事件事约束输入,所以,通过input事件变通实现. 原理很简单,每次输入时,记录下光标位置和上一次 ...
- Android GreenDAO 3.0 不修改版本号的情况下增加、删除表、添加字段
最近项目中使用了GreenDAO的3.0以上的版本,出现需要增加删除表的需求,刚开始用,发现官方对增加和删除的方法是每次去修改数据库版本号,版本一旦升级,那么原来数据库中的表会全部删除再重建.太麻烦, ...
- Android自定义布局的背景在多分辨率的情况下设置fill_parent时背景不能够横向全屏的问题解决...
问题描述:最近做了一个自定义的控件LinearLayout就是公用的底部菜单条,在指定分辨率下(例如:480x800,480x854)下背景是正常的,但是当程序运行到非指定(默认)的分辨率下就不正常了 ...
- Android Trick 3: GridView动态加载数据情况下,选中状态的实现
GridView使用AdapterView动态加载数据情况下,无论是在onCreate.Onstart.OnResume方法中调用getChildCount()均为0,这说明数据并没有在Activit ...
- Android面试每日一题(4): 哪些情况下会导致oom问题?
1.根据java的内存模型会出现内存溢出的内存有堆内存.方法区内存.虚拟机栈内存.native方法区内存: 2.一般说的OOM基本都是针对堆内存: 3.对于堆内存溢出主的根本原因有两种 (1)app进 ...
- 耗电排行Android,揪出Android手机电老虎!耗电应用排行
同样两台Android手机,在同样正常使用的情况下,为什么一台能待机超过2天,另一台每天就必须充电一次?十一国庆长假来临,众多朋友外出旅游,如果玩兴正浓却发现手机没电不能联系朋友了,岂非非常扫兴?An ...
最新文章
- VC++、MFC最好的开源项目
- 学习嵌入式系统需要具备的条件、方法及步骤
- 动态代理案例1:运用Proxy动态代理来增强方法
- linux下php远程连接mysql_Linux下PHP远程连接Oracle数据库 | 系统运维
- 第16讲 用户程序的结构与执行
- Flexible 弹性盒子模型之flex
- python-main
- 诗与远方:无题(四十一)
- C语言 JSON 解析库 - MJSON使用介绍
- python中reload作用_import reload __import__在python中的区别
- C# 调用Dll中非托管C++代码时,函数参数的类型对照
- python爬虫反爬策略_用Python语言做爬虫有哪些策略可以对抗反爬虫?
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_10 打印流_1_打印流_概述和使用...
- 生产排程系统_【经典文章】漫谈生产计划排程与控制系统
- 【中医学】9 方剂-3
- matlab的fft与ifft,fft与ifft区别
- 不愿意和别人打交道_一个人不愿意和同事打交道,大多是这3个原因,你了解吗...
- 范式BCNF,3NF的判断方法
- docker容器的创建
- 古罗马数字的基本知识
热门文章
- tensorflow的Dataset对象报错ValueError: GraphDef cannot be larger than 2GB
- 凸优化基本概念与kkt条件
- 完整电商项目--(五)用户基本信息(2):收货地址
- Safari中的印象笔记剪切插件默认要我登陆evernote账号但我只有印象笔记的账号啊!没关系一步教你解决!
- python魔法方法__new__(),__init__()
- 【ML】贝叶斯网络(Bayesian Network)
- WWN,WWNN,WWPN三者的区别
- MobileNetv1、MobileNetv2、MobileNetv3网络讲解
- linux检测木马病毒做什么,Linux下木马病毒清理小记
- 2022-2028全球与中国厨余垃圾处理器市场现状及未来发展趋势