【安卓学习之常见问题】 透明度设置报错Drawable.mutate()‘ on a null object reference

█ 【安卓学习之常见问题】 透明度设置报错Drawable.mutate()’ on a null object reference

█ 相关文章:

- 
 ● 【android学习开源项目之BasePopup】BasePopup(PopupWindow)进行二次封装
 ● 【android学习开源项目之AndroidAutoSize】AndroidAutoSize和DialogFragment的适配

█ 读前说明:

- 
 ● 本文通过学习别人写demo,学习一些课件,参考一些博客,’学习相关知识,如果涉及侵权请告知
 ● 本文只简单罗列相关的代码实现过程
 ● 涉及到的逻辑以及说明也只是简单介绍,主要当做笔记,了解过程而已

█ 我的问题

● 想要设置,爆出如下问题:

Attempt to invoke virtual method ‘android.graphics.drawable.Drawable android.graphics.drawable.Drawable.mutate()’ on a null object reference

在这里插入图片描述

● 代码如下:

				 private ImageView mItemImg;
				 private TextView mItemTitle;
				 
				 mItemImg.getBackground().mutate().setAlpha(240);
                 mItemTitle.getBackground().mutate().setAlpha(10);

█ 解决问题:

● 网上搜索测试,如果是单纯的TextView,可以使用如下方法

        mItemTitle.setTextColor(mItemTitle.getTextColors().withAlpha(20));// 透明
        mItemTitle.setTextColor(mItemTitle.getTextColors().withAlpha(255));// 不透明

● 如果是LinearLayout或者ImageView,可以使用如下方法:

    // 设置不可选效果
    private void setCheckableAlpha(float fromAlpha, float toAlpha) {
        AlphaAnimation alpha= new AlphaAnimation(fromAlpha, fromAlpha);
        alpha.setDuration(0);
        alpha.setFillAfter(true);
        mItemViewLL.startAnimation(alpha);
    }

    setCheckableAlpha(0.3F, 0.3F)// 透明
    setCheckableAlpha(1.0F, 1.0F)// 不透明

█ 相关资料:

● 1.2019-08-08 Android 设置view透明度(Alpha)包括子view(测试没效果)
 ● 2.2018-03-27 android Drawable.mutate()的使用
 ● 3.2014-07-08 android imageView背景透明度的设置(测试第二种方法可用)
 ● 4.2019-08-24 猿问:如何在Android中为View设置不透明度(Alpha)(提出setTextColor(getTextColors().withAlpha(alpha))的方案)

转载请注明出处:

https://blog.csdn.net/ljb568838953/article/details/104007182

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值