jublikon
jublikon

Reputation: 3447

Unable to use material design library

I would like to import a library with material elements to my project. So as in the Github instruction mentioned I have added that dependency to my grade file:

dependencies {
   compile 'com.github.rey5137:material:1.2.1'
}

Gradle syncing after that. and in the next step I have added the xml to my layout:

  <com.rey.material.widget.Spinner
            style="@style/Material.Widget.Spinner"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:rd_style="@style/Material.Drawable.Ripple.Wave"/>

Running the app gives me the issue:

Binary XML file line #35: Binary XML file line #35: Error inflating class com.rey.material.widget.Spinner

What else should I do to import that library correctly ? I have no idea what I have missed.

My xml layout file:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    xmlns:app="http://schemas.android.com/apk/res-auto"

    android:orientation="vertical">

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:layout_gravity="top"
        android:layout_weight="10"
        android:background="#19d1ff">

        <TextView android:id="@+id/registration_textview_titel_registrieren"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:layout_gravity="top"
            android:layout_marginTop="25dp"
            android:background="@drawable/round_corner_textview"
            android:text="Registrieren" />

    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:layout_gravity="bottom"
        android:background="#458b00"
        android:layout_weight="10" >

        <com.rey.material.widget.Spinner

            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            />

    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:layout_gravity="bottom"
        android:background="#5e00ff"
        android:layout_weight="10" >



    </LinearLayout>

</LinearLayout>

Stacktrace:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ads.adstimer/com.ads.adstimer.activity.RegistrationActivity}: android.view.InflateException: Binary XML file line #35: Error inflating class com.rey.material.widget.Spinner
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.access$800(ActivityThread.java:151)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:135)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5254)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:372)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:  Caused by: android.view.InflateException: Binary XML file line #35: Error inflating class com.rey.material.widget.Spinner
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.createView(LayoutInflater.java:633)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.rInflate(LayoutInflater.java:809)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.inflate(LayoutInflater.java:504)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.ads.adstimer.fragment.Registration.FragmentRegistration.onCreateView(FragmentRegistration.java:31)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.Fragment.performCreateView(Fragment.java:1962)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1026)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1207)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:738)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1572)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:330)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:511)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1236)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.Activity.performStart(Activity.java:6006)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2288)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.access$800(ActivityThread.java:151) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:135) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5254) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:372) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:  Caused by: java.lang.reflect.InvocationTargetException
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Constructor.newInstance(Native Method)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.createView(LayoutInflater.java:607)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.rInflate(LayoutInflater.java:806) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.rInflate(LayoutInflater.java:809) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.inflate(LayoutInflater.java:504) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.inflate(LayoutInflater.java:414) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.ads.adstimer.fragment.Registration.FragmentRegistration.onCreateView(FragmentRegistration.java:31) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.Fragment.performCreateView(Fragment.java:1962) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1026) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1207) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:738) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1572) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:330) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:511) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1236) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.Activity.performStart(Activity.java:6006) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2288) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.access$800(ActivityThread.java:151) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:135) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5254) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:372) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:  Caused by: java.lang.NoSuchFieldError: No static field Spinner_android_gravity of type I in class Lcom/rey/material/R$styleable; or its superclasses (declaration of 'com.rey.material.R$styleable' appears in /data/app/com.ads.adstimer-1/base.apk)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.rey.material.widget.Spinner.applyStyle(Spinner.java:234)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.rey.material.widget.Spinner.init(Spinner.java:149)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.rey.material.widget.Spinner.<init>(Spinner.java:128)
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Constructor.newInstance(Native Method) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Constructor.newInstance(Constructor.java:288) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.createView(LayoutInflater.java:607) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.rInflate(LayoutInflater.java:806) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.rInflate(LayoutInflater.java:809) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.inflate(LayoutInflater.java:504) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.view.LayoutInflater.inflate(LayoutInflater.java:414) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at com.ads.adstimer.fragment.Registration.FragmentRegistration.onCreateView(FragmentRegistration.java:31) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.Fragment.performCreateView(Fragment.java:1962) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1026) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1207) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:738) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1572) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:330) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:511) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1236) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.Activity.performStart(Activity.java:6006) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2288) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.access$800(ActivityThread.java:151) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:135) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5254) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method) 
11-11 11:57:40.026 19707-19707/com.ads.adstimer E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:372) 

Upvotes: 1

Views: 2110

Answers (1)

LordCommanDev
LordCommanDev

Reputation: 922

Try this:

Open build.gradle (Module: app)

Change compile 'com.github.rey5137:material:1.2.1' to compile 'com.github.rey5137:material:1.2.1.6-SNAPSHOT'

Then after apply plugin: 'com.android.application' , put repositories { maven { url "https://oss.sonatype.org/content/repositories/snapshots" } }

Then make a Gradle sync as suggested by Android Studio.

I found that solution in this link:

https://github.com/rey5137/material/issues/222

Check it!

Upvotes: 2

Related Questions