android - app compact v7 不适用于 androidx,所以如何在新库中制作这个项目
问题描述
===== Error ======
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.milesstudio.photoeditor, PID: 19734
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.milesstudio.photoeditor/com.milesstudio.photoeditor.Collage_Activity}: android.view.InflateException: Binary XML file line #76: Binary XML file line #76: Error inflating class android.support.design.widget.AppBarLayout
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3430)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3614)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:86)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2199)
at android.os.Handler.dispatchMessage(Handler.java:112)
at android.os.Looper.loop(Looper.java:216)
at android.app.ActivityThread.main(ActivityThread.java:7625)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)
Caused by: android.view.InflateException: Binary XML file line #76: Binary XML file line #76: Error inflating class android.support.design.widget.AppBarLayout
Caused by: android.view.InflateException: Binary XML file line #76: Error inflating class android.support.design.widget.AppBarLayout
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.design.widget.AppBarLayout" on path: DexPathList[[zip file "/data/app/com.milesstudio.photoeditor-u_XgTUf7zqGb5Ukgt5P1JQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.milesstudio.photoeditor-u_XgTUf7zqGb5Ukgt5P1JQ==/lib/arm64, /data/app/com.milesstudio.photoeditor-u_XgTUf7zqGb5Ukgt5P1JQ==/base.apk!/lib/arm64-v8a, /system/lib64, /product/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at android.view.LayoutInflater.createView(LayoutInflater.java:613)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:801)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:741)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:874)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:835)
at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:498)
at com.android.internal.policy.HwPhoneWindow.setContentView(HwPhoneWindow.java:342)
at android.app.Activity.setContentView(Activity.java:2941)
at com.milesstudio.photoeditor.Collage_Activity.onCreate(Collage_Activity.java:1584)
at android.app.Activity.performCreate(Activity.java:7458)
at android.app.Activity.performCreate(Activity.java:7448)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1286)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3409)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3614)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:86)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2199)
at android.os.Handler.dispatchMessage(Handler.java:112)
at android.os.Looper.loop(Looper.java:216)
at android.app.ActivityThread.main(ActivityThread.java:7625)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)
I/Process: Sending signal. PID: 19734 SIG: 9
Process 19734 terminated.
解决方案
您需要使用兼容的 AndroidX 库。
用于android.support.design.widget.AppBarLayout
使用材料依赖性:
implementation 'com.google.android.material:material:1.0.0'
然后将视图更改为:
com.google.android.material.appbar.AppBarLayout
请参阅: https ://developer.android.com/jetpack/androidx/migrate https://developer.android.com/jetpack/androidx/migrate/artifact-mappings。
推荐阅读
- c# - Update the video source device list
- elixir - 如何使用 Enum.map 以与 Elixir 中的其他元素略有不同的方式修改集合的第一个元素?
- javascript - javascript moment.js script not working quite right
- python - python tkinter 条目小部件动态名称
- python - GroupBy - Python
- amazon-dynamodb-dax - UnboundLocalError: local variable 'key_schema' referenced before assignment
- java - Spring: Implement a share-via-link feature for web application
- java - 如何在Java中实现注解为@Retention(RetentionPolicy.SOURCE)的注解
- c# - NUnit - 没有找到合适的构造函数
- laravel - 让虚拟机向自己发送邮件