android 在bitmap或者view上 添加渐变阴影
博客专区 > SuShine 的博客 > 博客详情
android 在bitmap或者view上 添加渐变阴影
SuShine 发表于2年前
android 在bitmap或者view上 添加渐变阴影
  • 发表于 2年前
  • 阅读 59
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

public class MainActivity extends Activity {


    private GradientDrawable mBackShadowDrawableLR;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        ImageView imageView = new ImageView(this);
        Bitmap bm = BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher).copy(Bitmap.Config.ARGB_8888, true);
        addShadow(bm);
        imageView.setImageBitmap(bm);
        setContentView(imageView);
    }
    public Bitmap addShadow(Bitmap bm) {
        int[] mBackShadowColors = new int[] { 0x00000000 , 0xB0AAAAAA};
        mBackShadowDrawableLR = new GradientDrawable(
                GradientDrawable.Orientation.LEFT_RIGHT, mBackShadowColors);
        mBackShadowDrawableLR.setGradientType(GradientDrawable.LINEAR_GRADIENT);
        mBackShadowDrawableLR.setBounds(0, 0, 20 , bm.getHeight());
        Canvas canvas = new Canvas(bm);
        mBackShadowDrawableLR.draw(canvas);
        return bm;
    }
}


//起始颜色和结束颜色
	        int[] mBackShadowColors = new int[] { mFromColor , mToColor};
	        //线性渐变
	        mBackShadowDrawableLR = new GradientDrawable(
	                GradientDrawable.Orientation.LEFT_RIGHT, mBackShadowColors);
	        mShadowWidth = mTheme.getDimen(R.dimen.novel_reader_page_shadowwidth);
	        //这是需要绘制阴影的位置
	        mBackShadowDrawableLR.setBounds(fromx, 0, (int) (fromx + mShadowWidth) , height);
	        //绘制到canvas
	        mBackShadowDrawableLR.draw(canvas);


共有 人打赏支持
粉丝 118
博文 319
码字总数 79563
×
SuShine
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: