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
版权声明:本文为博主原创文章,未经博主允许不得转载。

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

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

Android drawable selector 设置无效

今天写代码时,需要设置一个TextView 的点击效果,press 状态和normal 状态两个icon,同时,点击区域背景在press状态下也不同。实现时将TextView 放在RelativeLa...
  • imesong
  • imesong
  • 2015年08月14日 00:37
  • 3406

1.在写TextView 和ImageView 使用Selector切换字体颜色和图片的时候遇到定义的selector无效?

1.在写TextView 和ImageView 使用Selector切换字体颜色和图片的时候遇到定义的selector无效? 解决办法:textView字体颜色切换的selector最好写在res...

TextView selector不起作用

http://blog.csdn.net/nnmmbb/article/details/47777831 1、由于TextView,RelativeLayout(LinearLayout) 默认...

AndroidStudio中由于代码问题造成的Selector无效问题

android开发时的selector无法显示预期效果解决方案
  • G_Youda
  • G_Youda
  • 2017年02月11日 21:40
  • 456

Android TextView disable颜色坑

今天在项目中发现我们有一个小细节以前运行好好的视觉效果现在不对了,应该说有一段时间不对了,只是没有关注这一个小细节,刚好今天改代码碰到他,就探究了一下,顺便把解决方案给记录一下。还原整个过程     ...

TextView设置enable=false属性

又在TextView上碰到坑了,有个需求就是当条件不满足的时候,提交按钮要置灰,用android术语来讲就是TextView要不可用。 于是我在drawable下面添加了一段代码: 很简单...

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

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

android 代码设置 color的selector

如下: 1.agreeBtn.setTextColor(getResources().getColorStateList(R.drawable.selector_color_agree_te...
  • klx502
  • klx502
  • 2015年11月06日 10:56
  • 1086

Kotlin最简单的入门教程——基础类型(二)

8 If表达式在 Kotlin 中,if是一个表达式,即它会返回一个值。 因此就不需要三元运算符(条件 ? 然后 : 否则),因为普通的 if 就能胜任这个角色。// 传统用法 var max = a...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android中selector在java代码中使用无效的解决方案
举报原因:
原因补充:

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