android.view.InflateException:二进制XML文件行#0:错误膨胀类android.widget.CheckBox

时间:2017-12-31 07:20:50

标签: android

几天前我的代码工作正常。我正在构建和测试leimin z4 Android版本4.4.2 sdk 19.一切都很顺利。我也在测试tecno n8s。

直到昨天,当我运行WebView并且长按CardView时,一切都很好,这些都给了我这个错误:

Process: kamble.travelite.com, PID: 27771
android.view.InflateException: Binary XML file line #37: Error inflating class com.android.internal.widget.ActionBarView
   at android.view.LayoutInflater.createView(LayoutInflater.java:620)
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.createCustomViewInternal(CalligraphyLayoutInflater.java:211)
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.access$000(CalligraphyLayoutInflater.java:20)
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater$PrivateWrapperFactory2.onCreateView(CalligraphyLayoutInflater.java:302)
   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:689)
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:758)
   at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(CalligraphyLayoutInflater.java:60)
   at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
   at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
   at com.android.internal.policy.impl.PhoneWindow.generateLayout(PhoneWindow.java:3108)
   at com.android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.java:3172)
   at com.android.internal.policy.impl.PhoneWindow.getDecorView(PhoneWindow.java:1718)
   at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3019)
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395)
   at android.app.ActivityThread.access$800(ActivityThread.java:151)
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321)
   at android.os.Handler.dispatchMessage(Handler.java:110)
   at android.os.Looper.loop(Looper.java:193)
   at android.app.ActivityThread.main(ActivityThread.java:5299)
   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:825)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:641)
   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 uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.createCustomViewInternal(CalligraphyLayoutInflater.java:211) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.access$000(CalligraphyLayoutInflater.java:20) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater$PrivateWrapperFactory2.onCreateView(CalligraphyLayoutInflater.java:302) 
   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:689) 
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:758) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(CalligraphyLayoutInflater.java:60) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
   at com.android.internal.policy.impl.PhoneWindow.generateLayout(PhoneWindow.java:3108) 
   at com.android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.java:3172) 
   at com.android.internal.policy.impl.PhoneWindow.getDecorView(PhoneWindow.java:1718) 
   at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3019) 
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395) 
   at android.app.ActivityThread.access$800(ActivityThread.java:151) 
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321) 
   at android.os.Handler.dispatchMessage(Handler.java:110) 
   at android.os.Looper.loop(Looper.java:193) 
   at android.app.ActivityThread.main(ActivityThread.java:5299) 
   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:825) 
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:641) 
   at dalvik.system.NativeStart.main(Native Method) 
Caused by: android.view.InflateException: Binary XML file line #23: Error inflating class <unknown>
   at android.view.LayoutInflater.createView(LayoutInflater.java:620)
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.onCreateView(CalligraphyLayoutInflater.java:164)
   at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669)
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.onCreateView(CalligraphyLayoutInflater.java:148)
   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
   at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(CalligraphyLayoutInflater.java:60)
   at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
   at com.android.internal.widget.ActionBarView.initTitle(ActionBarView.java:845)
   at com.android.internal.widget.ActionBarView.setDisplayOptions(ActionBarView.java:663)
   at com.android.internal.widget.ActionBarView.<init>(ActionBarView.java:227)
   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 uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.createCustomViewInternal(CalligraphyLayoutInflater.java:211) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.access$000(CalligraphyLayoutInflater.java:20) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater$PrivateWrapperFactory2.onCreateView(CalligraphyLayoutInflater.java:302) 
   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:689) 
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:758) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(CalligraphyLayoutInflater.java:60) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
   at com.android.internal.policy.impl.PhoneWindow.generateLayout(PhoneWindow.java:3108) 
   at com.android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.java:3172) 
   at com.android.internal.policy.impl.PhoneWindow.getDecorView(PhoneWindow.java:1718) 
   at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3019) 
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395) 
   at android.app.ActivityThread.access$800(ActivityThread.java:151) 
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321) 
   at android.os.Handler.dispatchMessage(Handler.java:110) 
   at android.os.Looper.loop(Looper.java:193) 
   at android.app.ActivityThread.main(ActivityThread.java:5299) 
   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:825) 
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:641) 
   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 uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.onCreateView(CalligraphyLayoutInflater.java:164) 
   at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.onCreateView(CalligraphyLayoutInflater.java:148) 
   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694) 
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(CalligraphyLayoutInflater.java:60) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
   at com.android.internal.widget.ActionBarView.initTitle(ActionBarView.java:845) 
   at com.android.internal.widget.ActionBarView.setDisplayOptions(ActionBarView.java:663) 
   at com.android.internal.widget.ActionBarView.<init>(ActionBarView.java:227) 
   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 uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.createCustomViewInternal(CalligraphyLayoutInflater.java:211) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.access$000(CalligraphyLayoutInflater.java:20) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater$PrivateWrapperFactory2.onCreateView(CalligraphyLayoutInflater.java:302) 
   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:689) 
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:758) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(CalligraphyLayoutInflater.java:60) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
   at com.android.internal.policy.impl.PhoneWindow.generateLayout(PhoneWindow.java:3108) 
   at com.android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.java:3172) 
   at com.android.internal.policy.impl.PhoneWindow.getDecorView(PhoneWindow.java:1718) 
   at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3019) 
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395) 
   at android.app.ActivityThread.access$800(ActivityThread.java:151) 
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321) 
   at android.os.Handler.dispatchMessage(Handler.java:110) 
   at android.os.Looper.loop(Looper.java:193) 
   at android.app.ActivityThread.main(ActivityThread.java:5299) 
   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:825) 
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:641) 
   at dalvik.system.NativeStart.main(Native Method) 
Caused by: java.lang.UnsupportedOperationException: Can't convert to color: type=0x2
   at android.content.res.TypedArray.getColor(TypedArray.java:327)
   at android.widget.TextView.<init>(TextView.java:695)
   at android.widget.TextView.<init>(TextView.java:637)

还有这个

Process: kamble.travelite.com, PID: 27350
java.lang.RuntimeException: Unable to start activity ComponentInfo{kamble.travelite.com/kamble.travelite.com.WebActivity2}: android.view.InflateException: Binary XML file line #0: Error inflating class android.widget.CheckBox
   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2338)
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390)
   at android.app.ActivityThread.access$800(ActivityThread.java:151)
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321)
   at android.os.Handler.dispatchMessage(Handler.java:110)
   at android.os.Looper.loop(Looper.java:193)
   at android.app.ActivityThread.main(ActivityThread.java:5299)
   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:825)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:641)
   at dalvik.system.NativeStart.main(Native Method)
Caused by: android.view.InflateException: Binary XML file line #0: Error inflating class android.widget.CheckBox
   at android.view.LayoutInflater.createView(LayoutInflater.java:620)
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.onCreateView(CalligraphyLayoutInflater.java:164)
   at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669)
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.onCreateView(CalligraphyLayoutInflater.java:148)
   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
   at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(CalligraphyLayoutInflater.java:60)
   at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
   at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
   at kamble.travelite.com.WebActivity2.showDialog(WebActivity2.java:138)
   at kamble.travelite.com.WebActivity2.onCreate(WebActivity2.java:46)
   at android.app.Activity.performCreate(Activity.java:5264)
   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088)
   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2302)
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390) 
   at android.app.ActivityThread.access$800(ActivityThread.java:151) 
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321) 
   at android.os.Handler.dispatchMessage(Handler.java:110) 
   at android.os.Looper.loop(Looper.java:193) 
   at android.app.ActivityThread.main(ActivityThread.java:5299) 
   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:825) 
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:641) 
   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 uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.onCreateView(CalligraphyLayoutInflater.java:164) 
   at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.onCreateView(CalligraphyLayoutInflater.java:148) 
   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694) 
   at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
   at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(CalligraphyLayoutInflater.java:60) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
   at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
   at kamble.travelite.com.WebActivity2.showDialog(WebActivity2.java:138) 
   at kamble.travelite.com.WebActivity2.onCreate(WebActivity2.java:46) 
   at android.app.Activity.performCreate(Activity.java:5264) 
   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088) 
   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2302) 
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390) 
   at android.app.ActivityThread.access$800(ActivityThread.java:151) 
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321) 
   at android.os.Handler.dispatchMessage(Handler.java:110) 
   at android.os.Looper.loop(Looper.java:193) 
   at android.app.ActivityThread.main(ActivityThread.java:5299) 
   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:825) 
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:641) 
   at dalvik.system.NativeStart.main(Native Method) 
Caused by: java.lang.UnsupportedOperationException: Can't convert to color: type=0x2
   at android.content.res.TypedArray.getColor(TypedArray.java:327)
   at android.widget.TextView.<init>(TextView.java:695)
   at android.widget.Button.<init>(Button.java:107)
   at android.widget.CompoundButton.<init>(CompoundButton.java:68)
   at android.widget.CheckBox.<init>(CheckBox.java:68)
   at android.widget.CheckBox.<init>(CheckBox.java:64)

依次。

<CheckBox
    android:id="@+id/checkBox"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="@string/dialog_close" />

这是复选框的xml。父级是LinearLayout。

1 个答案:

答案 0 :(得分:0)

问题出现了,因为我使用的主题不是从Theme.AppCompat继承的。这就是为什么会出现这样的错误。对于任何人都会遇到类似的错误。首先检查您的主题。您也可以考虑将Theme.AppCompat用于您的应用。