求助RadioButton的动态添加
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求助RadioButton的动态添加相关的知识,希望对你有一定的参考价值。
我的布局文件里有一个RelativeLayout ,里面嵌套一个HorizontalScrollView,HorizontalScrollView里有RadioGroup,如何动态添加进若干个RadioButton? 并且RadioButton要使用Style资源
参考技术A radioButton = new RadioButton(this);radioButton.setText(m_DStr);radio_group.addView(radioButton)利用代码动态改变radiobutton 的 selector
因为公司业务需求,需要在特定时期改变页面样式,其中有一个radiobutton要在特定时期修改为特定的样式,图片和字体颜色都需要修改,这里需要用到StateListDrawable修改radiobutton的背景图片,还需要ColorStateList修改字体颜色
StateListDrawable arriveddrawable = new StateListDrawable();
Drawable arriveselected = getResources().getDrawable(R.drawable.new_year_site_on);
Drawable arriveunSelected = getResources().getDrawable(R.drawable.new_year_site_off);
arriveddrawable.addState(new int[]android.R.attr.state_checked,
arriveselected);
arriveddrawable.addState(new int[]-android.R.attr.state_checked,
arriveunSelected);
rbtnArrival.setCompoundDrawablesWithIntrinsicBounds(null, arriveddrawable, null, null);
StateListDrawable 加载不同状态下对应的图片资源
注意 上面的“-”负号表示对应的属性值为false
如此,就可以实现
对字体颜色的修改
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/logoutcolor" android:state_checked="true" />
<item android:color="@color/AppTextColor" />
</selector>
ColorStateList colorStateList = getResources().getColorStateList(R.color.newyeartab_menu_item_textcolor);
rbtnArrival.setTextColor(colorStateList);
rbtnLine.setTextColor(colorStateList);
rbtnFavorite.setTextColor(colorStateList);
rbtnIwillgo.setTextColor(colorStateList);
如此即可
以上是关于求助RadioButton的动态添加的主要内容,如果未能解决你的问题,请参考以下文章