我试图以编程方式设置按钮的背景色调,而不是像完成here那样设置颜色资源,而是设置为十六进制值.目前,我已将十六进制值转换为colorDrawable,但不知道如何使用它来设置我的按钮的.setBackgroundTintList()方法的背景色调.请注意,这是在片段中完成的,上下文存储在名为mContext的全局变量中.
colorDrawable colorDrawable = new colorDrawable(color.parsecolor("#FFFFFF"));
解决方法:
在API 21上
btn.setBackgroundTintList(colorStateList.valueOf(color.parsecolor("#buttoncolor")));
或者Compat
Drawable drawable = new colorDrawable(color.parsecolor("color")); // Wrap the drawable so that future tinting calls work // on pre-v21 devices. Always use the returned drawable. drawable = DrawableCompat.wrap(drawable); DrawableCompat.setTint(drawable,color.parsecolor("colorTint")); //or tint List //DrawableCompat.setTintList(drawable,colorStateList.valueOf(color.parsecolor("#ffffff"))); btn.setBackground(drawable); //apply drwable with tint to the ctn
总结 以上是内存溢出为你收集整理的android – 用于以编程方式使用十六进制值/ ColorDrawable的按钮的setBackgroundTintList全部内容,希望文章能够帮你解决android – 用于以编程方式使用十六进制值/ ColorDrawable的按钮的setBackgroundTintList所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)