-2

I'have got an InflateException while trying to inflate layout in my pager adapter. Same item works great with recycler view, but crashs when calling inflate method.

Does any one have an answer ?

Here is my code XML R.layout.item_winner:

<RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:background="@drawable/bg_winner_cell"
        android:layout_marginStart="@dimen/dimen_10dp"
        android:paddingStart="@dimen/dimen_14dp"
        android:paddingTop="@dimen/dimen_12dp"
        android:paddingBottom="@dimen/dimen_12dp"
        android:paddingEnd="@dimen/dimen_10dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

    <android.support.design.widget.CoordinatorLayout
            android:id="@+id/winner_layout"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

        <ImageView
                android:id="@+id/iv_winner"
                android:src="@drawable/ic_user_placeholder"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>

        <ImageView
                android:src="@drawable/ic_coordinated_star"
                app:layout_anchor="@id/iv_winner"
                app:layout_anchorGravity="end"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>

    </android.support.design.widget.CoordinatorLayout>
</RelativeLayout>

and here is the inflate :

View view = LayoutInflater.from(mContext).inflate(R.layout.item_winner, container, false);

Ps : design library is included :

implementation 'com.android.support:design:26.1.0'

The log :

android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class android.support.design.widget.CoordinatorLayout
                                                               Caused by: android.view.InflateException: Binary XML file line #0: Error inflating class android.support.design.widget.CoordinatorLayout
                                                               Caused by: java.lang.reflect.InvocationTargetException
  • `InflateException` doesn't tell you much; just that _something_ went wrong. Look further on in the stack trace for the root cause. – Mike M. Feb 08 '18 at 00:35

1 Answers1

0

Try to use app:srcCompat instead of android:src

        <ImageView
            android:id="@+id/iv_winner"
            app:srcCompat="@drawable/ic_user_placeholder"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>

And don't forget to add these lines in your build.gradle file

android {
defaultConfig {
vectorDrawables.useSupportLibrary = true
}
}


dependencies {
 compile 'com.android.support:appcompat-v7:LATEST VERSION'
}