Reputation: 3447
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
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