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
  • 5085

Selector无效的几种情况

前言在安卓开发中,经常会Selector来实现UI中的点按效果,以此回避重写相对复杂的OnTouchEvent事件方法,但是有没有遇到使用了Selector但点击无效果的情况呢?此文对会造成Selec...
  • w19961009
  • w19961009
  • 2016年02月17日 22:51
  • 932

Android使用Java代码设置selector或drawable,以及使用自定义控件方式使用它

镇楼图~~! TextView再给个selecotor 这种东西不要太简单,但是这种东西我不想重复去写N个Selector ! so~ /** * 获取Selector ...
  • SilentWeek
  • SilentWeek
  • 2016年10月25日 22:40
  • 2634

Android中的选择器selector的写法解析及不起作用原因

selector能为我们快速定义各种状态下控件的字体或背景颜色,非常方便快捷,可是有时候我们写对了状态定义却不起效果,比如 ...
  • XieYupeng520
  • XieYupeng520
  • 2015年06月11日 09:33
  • 5945

Android drawable selector 设置无效

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

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

1.在写TextView 和ImageView 使用Selector切换字体颜色和图片的时候遇到定义的selector无效? 解决办法:textView字体颜色切换的selector最好写在res...
  • u011513914
  • u011513914
  • 2015年08月30日 14:53
  • 1767

TextView selector不起作用

http://blog.csdn.net/nnmmbb/article/details/47777831 1、由于TextView,RelativeLayout(LinearLayout) 默认...
  • important0534
  • important0534
  • 2016年06月20日 16:57
  • 413

点击GridView时,出现背景色,setSelector的使用

如果想在点击GridView时出现背景色,可以把gridview
  • huanongjingchao
  • huanongjingchao
  • 2014年04月28日 17:34
  • 8953

Android中Selector的setSelected“方法不管用”

今天写一个用两个自定义的TextView控制ViewPager的时候,想实现点击TextView处于选中状态, selector就选中中的state_selected所对应的图片。 selecto...
  • rachel__lin
  • rachel__lin
  • 2016年11月09日 15:25
  • 3795

安卓Selector失效、无用的解决方案

在开发安卓的时候经常会用到selector来为button自动设置背景,selector中有多种item,每个item可以定义一种状态,同时设置这种状态所要显示的图片。 但是在使用的selector中...
  • zfan93
  • zfan93
  • 2016年04月27日 10:10
  • 1340
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android中selector在java代码中使用无效的解决方案
举报原因:
原因补充:

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