Error inflating class com.facebook.drawee.view.SimpleDraweeView问题的解决

刚刚遇到的一个小问题,在引用 ‘com.facebook.fresco:fresco:0.6.0’ 库后,在布局中使用

       <com.facebook.drawee.view.SimpleDraweeView
            android:layout_width="150dp"
            android:layout_height="150dp"
            android:background="@null"
            android:id="@+id/drawee_view"
            android:layout_alignParentLeft="true"
            app:viewAspectRatio="1" />
  1. 结果出现了 Binary XML file line #22: Error inflating class
    com.facebook.drawee.view.SimpleDraweeView 的错误。

  2. 上网查了一下,报错的原因是这里是没有引用到com.facebook.drawee.view.SimpleDraweeView,所以需要对它进行初始化。

解决方法一

把初始化Fresco调整到setContentView(R.layout.activity_main);的上边 ,具体如下

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //初始化Fresco
        Fresco.initialize(MainActivity.this);
        
        setContentView(R.layout.activity_resign);
        
        initView();
    }

解决方法二

可以写一个Fresco的APPlication,方法如下:

import android.app.Application;

import com.facebook.drawee.backends.pipeline.Fresco;

/**
 * Fresco的初始化
 *
 * Created by Gxs on 2016/7/24.
 */
public class Fresco extends Application {

    @Override
    public void onCreate() {
        super.onCreate();

        Fresco.initialize(this);
    }
}

需要在AndroidManifest.xml清单文件中引用一下,具体如下:

    <application
        android:name=".widget.Fresco" 
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

在application 下添加 上 android:name=“.widget.Fresco” 就可以啦。

更多学习资讯,学习源码,请在耶宇星球领取

更多学习资讯,学习源码,请在耶宇星球领取
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北顾丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值