0

在我的應用程序中,我使用的是bruicePickerView庫,它有一個像ios一樣的時間選擇器。我的Android應用程序在Android棒棒糖上工作正常,但是當我嘗試在具有v 4.4的另一個設備上運行我的應用程序時,我的應用程序與以下日誌貓崩潰。Android應用程序在jeallybeans上啓動時崩潰

.petrichors.applekidsnursery.TestActivity}: android.view.InflateException: Binary XML file line #46: Error inflating class com.bruce.pickerview.LoopView 
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2222) 
      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2272) 
      at android.app.ActivityThread.access$800(ActivityThread.java:139) 
      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1208) 
      at android.os.Handler.dispatchMessage(Handler.java:102) 
      at android.os.Looper.loop(Looper.java:136) 
      at android.app.ActivityThread.main(ActivityThread.java:5135) 
      at java.lang.reflect.Method.invokeNative(Native Method) 
      at java.lang.reflect.Method.invoke(Method.java:515) 
      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790) 
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:606) 
      at dalvik.system.NativeStart.main(Native Method) 
    Caused by: android.view.InflateException: Binary XML file line #46: Error inflating class com.bruce.pickerview.LoopView 
      at android.view.LayoutInflater.createView(LayoutInflater.java:620) 
      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696) 
      at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 
      at android.view.LayoutInflater.parseInclude(LayoutInflater.java:839) 
      at android.view.LayoutInflater.rInflate(LayoutInflater.java:745) 
      at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
      at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
      at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
      at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:257) 
      at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109) 
      at com.petrichors.applekidsnursery.TestActivity.onCreate(TestActivity.java:31) 
      at android.app.Activity.performCreate(Activity.java:5289) 
      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2186) 
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2272) 
            at android.app.ActivityThread.access$800(ActivityThread.java:139) 
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1208) 
            at android.os.Handler.dispatchMessage(Handler.java:102) 
            at android.os.Looper.loop(Looper.java:136) 
            at android.app.ActivityThread.main(ActivityThread.java:5135) 
            at java.lang.reflect.Method.invokeNative(Native Method) 
            at java.lang.reflect.Method.invoke(Method.java:515) 
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790) 
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:606) 
            at dalvik.system.NativeStart.main(Native Method) 
    Caused by: java.lang.reflect.InvocationTargetException 
      at java.lang.reflect.Constructor.constructNative(Native Method) 
      at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
      at android.view.LayoutInflater.createView(LayoutInflater.java:594) 
            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696) 
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 
            at android.view.LayoutInflater.parseInclude(LayoutInflater.java:839) 
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:745) 
            at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
            at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
            at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
            at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:257) 
            at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109) 
            at com.petrichors.applekidsnursery.TestActivity.onCreate(TestActivity.java:31) 
            at android.app.Activity.performCreate(Activity.java:5289) 
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2186) 
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2272) 
            at android.app.ActivityThread.access$800(ActivityThread.java:139) 
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1208) 
            at android.os.Handler.dispatchMessage(Handler.java:102) 
            at android.os.Looper.loop(Looper.java:136) 
            at android.app.ActivityThread.main(ActivityThread.java:5135) 
            at java.lang.reflect.Method.invokeNative(Native Method) 
            at java.lang.reflect.Method.invoke(Method.java:515) 
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790) 
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:606) 
            at dalvik.system.NativeStart.main(Native Method) 
    Caused by: java.lang.NoSuchMethodError: android.view.View.<init> 
      at com.bruce.pickerview.LoopView.<init>(LoopView.java:95) 
      at com.bruce.pickerview.LoopView.<init>(LoopView.java:90) 
      at com.bruce.pickerview.LoopView.<init>(LoopView.java:86) 
            at java.lang.reflect.Constructor.constructNative(Native Method) 
            at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
            at android.view.LayoutInflater.createView(LayoutInflater.java:594) 
            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696) 
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 
            at android.view.LayoutInflater.parseInclude(LayoutInflater.java:839) 
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:745) 
            at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
            at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
            at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
            at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:257) 
            at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109) 
            at com.petrichors.applekidsnursery.TestActivity.onCreate(TestActivity.java:31) 
            at android.app.Activity.performCreate(Activity.java:5289) 
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2186) 
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2272) 
            at android.app.ActivityThread.access$800(ActivityThread.java:139) 
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1208) 
            at android.os.Handler.dispatchMessage(Handler.java:102) 
            at android.os.Looper.loop(Looper.java:136) 
            at android.app.ActivityThread.main(ActivityThread.java:5135) 
            at java.lang.reflect.Method.invokeNative(Native Method) 
            at java.lang.reflect.Method.invoke(Method.java:515) 
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790) 
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:606) 
            at dalvik.system.NativeStart.main(Native Method) 

回答

0

這件事是通過對預棒棒糖設備的新的棒棒糖View構造函數的使用不當造成的。

這應該在拾取器庫的新1.2.1版本中解決,嘗試更新到它。

另請參閱GitHub庫中的this commit