美文网首页
android 动态修改backgroud solid颜色

android 动态修改backgroud solid颜色

作者: W会痛的石头 | 来源:发表于2020-05-15 16:18 被阅读0次

Android开发过程中,在使用某些控件时,我们会给控件设置background,其中就有用到shape,shape可以定义各种各样的形状,也可以定义一些图片资源。相对于传统图片来说,使用shape可以减少资源占用,减少安装包大小,还能够很好地适配不同尺寸的手机。shape其中的一个属性solid是用来填充内部颜色的,根据项目需求可能需要动态的更换颜色。下面大致实现以下动态修改solid颜色

import android.graphics.Color;

import android.graphics.drawable.GradientDrawable;

import android.view.View;

/**

* Created by  wangrui

*/

public class ColorUtils {

    public static void setBackgroundColor(View view, int position) {

     // view就是对应的控件(需要修改的颜色控件)

        GradientDrawable background = (GradientDrawable) view.getBackground();

        if (position % 4 == 0) {

            background.setColor(Color.parseColor("#16bcda"));

        }

        if (position % 4 == 1) {

            background.setColor(Color.parseColor("#da167b"));

        }

        if (position % 4 == 2) {

            background.setColor(Color.parseColor("#8516da"));

        }

        if (position % 4 == 3) {

            background.setColor(Color.parseColor("#167bda"));

        }

    }

}

其中只需要将view修改为项目中使用的控件即可。

相关文章

网友评论

      本文标题:android 动态修改backgroud solid颜色

      本文链接:https://www.haomeiwen.com/subject/hbftohtx.html