I'm trying to use the fresco library. I used it before too and it was working, but now, for some reason I get:
Unable to start activity ComponentInfo{com.example.home.template/com.example.home.template.MainActivity}: android.view.InflateException: Binary XML file line #26: Error inflating class com.facebook.drawee.view.SimpleDraweeView
My xml file:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:fresco="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/profileImage"
fresco:actualImageScaleType="centerCrop"
android:layout_width="200dp"
android:layout_gravity="center_horizontal"
android:layout_height="200dp" />
</LinearLayout>
MyApplication:
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
FacebookSdk.sdkInitialize(this);
}
}
I have it in my manifest: android:name=".MyApplication"
The only problem that I'm having is with the draweeview. I can do all of the other stuff such as logging in and taking information.
The easiest way to load an image into a SimpleDraweeView is to call setImageURI: That’s it, you are now displaying images with Fresco! SimpleDraweeView, despite its name, supports a great deal of customization through XML attributes.
These can be used in XML layouts. The simplest usage example of SimpleDraweeView is: NOTE: SimpleDraweeView does not support wrap_content for layout_width or layout_height attributes. More information can be found here.
NOTE: SimpleDraweeView does not support wrap_content for layout_width or layout_height attributes. More information can be found here. The only exception to this is when you are setting an aspect ratio, like so:
The only exception to this is when you are setting an aspect ratio, like so: The easiest way to load an image into a SimpleDraweeView is to call setImageURI: That’s it, you are now displaying images with Fresco! SimpleDraweeView, despite its name, supports a great deal of customization through XML attributes.
In my case writing Fresco.initialize(this);
before setContentView(R.layout.myxml);
helped me.
Update:
you have FacebookSdk.sdkInitialize(this);
instead of Fresco.initialize(this)
in your myapplication
I was getting this problem in API 19 devices just because I was using drawable vector as placeholder here
fresco:placeholderImage="@drawable/ic_phone"
After changing to PNG my problem was solved.
Dont forget to initialize it in your App as
class App : Application() {
override fun onCreate() {
super.onCreate()
Fresco.initialize(this)
}
}
as well as this line in manifest's application
android:name=".App"
Today I had the same problem. However, I forgot to add the property android:name=".MyApplication"
in the AndroidManifest.xml
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With