【第21期】观点:人工智能到底用 GPU?还是用 FPGA?

android中selector在java代码中使用无效的解决方案

原创 2016年05月30日 20:13:56
最近在做项目,有些按钮图片需要设置不同的状态且对应不同的icon。在此过程中遇到了一些问题。

~在用到TextView时,要设置它的文字颜色和drawableleft图片在不同的status下的情况,此时用到selector。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false" android:color="#d6d6d6"></item>
<item android:state_enabled="true" android:color="@color/color_blue_618dbe"></item>
</selector>

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/icon_addnewgrop_unenable" android:state_enabled="false" />
<item android:drawable="@drawable/icon_addnewgroup" />
</selector>
以上是字体颜色和对应状态的图片selector。在使用的时候,放在xml中
android:textColor=“@drawable/sssss”
android:  drawableleft=“@drawable/sssss”
在java类里面用setEnable()方法来直接控制对应的状态显示。
遇到的问题:
在java给textview的文字设置selector时无效具体代码是:
tv.setTextColor(getResource().getColor(R.color.selector));
使用这行代码后在用setEnable来改变状态后显示无效。
后来查找了原因,在xml中使用selector,系统会自动转换成colorstatelist.而在java代码中需要使用
tv.setTextColor(getResources().getColorStateList(R.color.selector_color_ffffff_d6d6d6));然后问题解决bingo
版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

Android selector 失效的一个原因

问题重现: 使用selector,期望按下按钮时 Button 图片变色,代码如下:             android:id="@+id/btn_match"         styl...
  • zhaizu
  • zhaizu
  • 2012-12-27 10:10
  • 6412

android 使用selector 在 button上无效的问题(汇总)

问题有三个: 1.图片或者按钮的XML文件,应该写在drawable-h的文件夹下面,不能写在drawable里面 2.selector这个文件,默认的ITEM加载...

给TextView,RelativeLayout 设置selector不起作用的原因总结

1、由于TextView,RelativeLayout(LinearLayout) 默认不具备可点击性的,要让background的selector 起作用有两种方法:                ...
  • nnmmbb
  • nnmmbb
  • 2015-08-19 11:25
  • 3341

Android drawable selector 设置无效

今天写代码时,需要设置一个TextView 的点击效果,press 状态和normal 状态两个icon,同时,点击区域背景在press状态下也不同。实现时将TextView 放在RelativeLa...

使用selector修改TextView中字体的颜色

selector想必大家都用过了,但是在修改字体的颜色的时候还是要细心。 我们在TextView中设置字体颜色一般使用  android:textColor="@color/red" 但是我们在...

TextView采用setText赋值之后不能立即显示在页面上的问题解决

在处理比较复杂的逻辑的时候,有时候setText之后而且确实保证里面是有值的,但是也不能保证页面就一定能够显示出来该值!settext仅仅是赋值而已,真正界面上的改变还是得靠刷新动作拿到cpu时间来执...

Android中TextView的SetText()方法注意事项

忙活了一个下午才研究出来的。。。。 学习Android的Intent时候跟着Mars老师做简单的乘法程序,在第一个activity输入两个正整数,通过一个intent跳转到第二个intent,在第...

Textview 设置selector

先说下要求:碰到一个问题就是如何实现当按下TextView的时候字体能变颜色,松开之后又能恢复原来的颜色。自己开始想到的方法是设置TextView的onTouchListener,当按下时改变字体的颜...

javaweb实现验证码功能

在javaweb的用户注册与登陆功能时,有时为了防止漏洞或者大量注册,可以使用验证码功能,下面是验证码的一个简单实现验证码类public class ValiImg extends HttpServl...

【Android】java生成炫酷验证码,不区分大小写。登陆,发送手机验证码,防止注册机,android开发

作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 QQ986945193 微博:http://weibo.com/mcxiaobing 首先给大...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)