Glide4.8 使用TextView的drawableTop

4.8以后SimpleTarget不推荐使用了,选择CustomVIewTarget,但是包含东西太多,自定义一个Target用于加载TextView的drawable

public class TextViewDrawableTarget extends CustomViewTarget<TextView, Drawable> {
    /**
     * Constructor that defaults {@code waitForLayout} to {@code false}.
     *
     * @param view
     */
    public TextViewDrawableTarget(@NonNull TextView view) {
        super(view);
    }

    @Override
    protected void onResourceCleared(@Nullable Drawable placeholder) {

    }

    @Override
    public void onLoadFailed(@Nullable Drawable errorDrawable) {
        //加载失败例如url=null,此时使用 fallback不生效
         view.setCompoundDrawablesWithIntrinsicBounds(null, mContext.getDrawable(R.mipmap.ic_boy), null, null);
    }

    @Override
    public void onResourceReady(@NonNull Drawable resource, @Nullable Transition<? super Drawable> transition) {
        view.setCompoundDrawablesWithIntrinsicBounds(null, resource, null, null);
    }
}

//使用
  GlideApp.with(this)
                .load(url)
                .into(new TextViewDrawableTarget(tvAssociateName));
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,222评论 3 119
  • 内容 抽屉菜单 ListView WebView SwitchButton 按钮 点赞按钮 进度条 TabLayo...
    小狼W阅读 1,672评论 0 10
  • 目前我国刑法学界关于犯罪既遂的标准有三种代表性学说:一是“犯罪构成要件齐备说”、二是“犯罪目的实现说”、三是...
    孤山童子阅读 2,485评论 1 2
  • 1.设置项目名,选择自由风格的项目 2.添加源码管理 选择来源svn/git,我选择的是git Repositor...
    sweetMemories阅读 1,123评论 0 0
  • 有时候我在想翻译硕士,和CATTI的关系…
    Mxiso阅读 201评论 0 0

友情链接更多精彩内容