是否有使用android-ConstraintLayout的最低android版本?

我的android ConstraintLayout功能有问题... 在我的应用程序中,我使用ConstraintLayout,当我在9+安卓版本上安装我的应用程序时,一切正常,但是当我在较低的android版本上安装应用程序时,该应用程序崩溃了。 在我的android项目中,我有: minSdkVersion 21 targetSdkVersion 26 compileSdkVersion 28

任何人都不知道是什么原因造成的?还是解决它的方法?

编辑: 感谢 @Nikos Hidalgo ! 我不正确理解错误消息。是我的渐变背景打破了一切。

我得到的错误如下:

11-12 15:44:32.580 11651-11651/? E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.repondeurtexto,PID: 11651
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.repondeurtexto/com.example.repondeurtexto.Firstactivity}: android.view.InflateException: Binary XML file line #2: Error inflating class androidx.constraintlayout.widget.ConstraintLayout
        at android.app.activityThread.performLaunchactivity(activityThread.java:3150)
        at android.app.activityThread.handleLaunchactivity(activityThread.java:3260)
        at android.app.activityThread.access$1000(activityThread.java:218)
        at android.app.activityThread$H.handleMessage(activityThread.java:1734)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:145)
        at android.app.activityThread.main(activityThread.java:6934)
        at java.lang.reflect.Method.invoke(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:372)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
     Caused by: android.view.InflateException: Binary XML file line #2: Error inflating class androidx.constraintlayout.widget.ConstraintLayout
        at android.view.LayoutInflater.createView(LayoutInflater.java:640)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:750)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:483)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:415)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:366)
        at androidx.appcompat.app.appcompatdelegateImpl.setContentView(appcompatdelegateImpl.java:469)
        at androidx.appcompat.app.AppCompatactivity.setContentView(AppCompatactivity.java:140)
        at com.example.repondeurtexto.Firstactivity.onCreate(Firstactivity.java:15)
        at android.app.activity.performCreate(activity.java:6609)
        at android.app.Instrumentation.callactivityOnCreate(Instrumentation.java:1134)
        at android.app.activityThread.performLaunchactivity(activityThread.java:3103)
        at android.app.activityThread.handleLaunchactivity(activityThread.java:3260) 
        at android.app.activityThread.access$1000(activityThread.java:218) 
        at android.app.activityThread$H.handleMessage(activityThread.java:1734) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:145) 
        at android.app.activityThread.main(activityThread.java:6934) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:372) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) 
     Caused by: java.lang.reflect.invocationTargetException
        at java.lang.reflect.Constructor.newInstance(Native Method)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
        at android.view.LayoutInflater.createView(LayoutInflater.java:614)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:750) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:483) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:415) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:366) 
        at androidx.appcompat.app.appcompatdelegateImpl.setContentView(appcompatdelegateImpl.java:469) 
        at androidx.appcompat.app.AppCompatactivity.setContentView(AppCompatactivity.java:140) 
        at com.example.repondeurtexto.Firstactivity.onCreate(Firstactivity.java:15) 
        at android.app.activity.performCreate(activity.java:6609) 
        at android.app.Instrumentation.callactivityOnCreate(Instrumentation.java:1134) 
        at android.app.activityThread.performLaunchactivity(activityThread.java:3103) 
        at android.app.activityThread.handleLaunchactivity(activityThread.java:3260) 
        at android.app.activityThread.access$1000(activityThread.java:218) 
        at android.app.activityThread$H.handleMessage(activityThread.java:1734) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:145) 
        at android.app.activityThread.main(activityThread.java:6934) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:372) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) 
     Caused by: android.content.res.Resources$NotFoundException: Resource "com.example.repondeurtexto:drawable/gradient" (7f07006c)  is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f07006c a=-1 r=0x7f07006c}
        at android.content.res.Resources.loadDrawableForCookie(Resources.java:4017)
        at android.content.res.Resources.loadDrawable(Resources.java:3929)
        at android.content.res.Resources.loadDrawable(Resources.java:3779)
        at android.content.res.TypedArray.getDrawable(TypedArray.java:776)
        at android.view.View.<init>(View.java:4001)
        at android.view.ViewGroup.<init>(ViewGroup.java:513)
        at android.view.ViewGroup.<init>(ViewGroup.java:509)
        at android.view.ViewGroup.<init>(ViewGroup.java:505)
        at androidx.constraintlayout.widget.ConstraintLayout.<init>(ConstraintLayout.java:575)
        at java.lang.reflect.Constructor.newInstance(Native Method) 
        at java.lang.reflect.Constructor.newInstance(Constructor.java:288) 
        at android.view.LayoutInflater.createView(LayoutInflater.java:614) 
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:750) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:483) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:415) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:366) 
        at androidx.appcompat.app.appcompatdelegateImpl.setContentView(appcompatdelegateImpl.java:469) 
        at androidx.appcompat.app.AppCompatactivity.setContentView(AppCompatactivity.java:140) 
        at com.example.repondeurtexto.Firstactivity.onCreate(Firstactivity.java:15) 
        at android.app.activity.performCreate(activity.java:6609) 
        at android.app.Instrumentation.callactivityOnCreate(Instrumentation.java:1134) 
        at android.app.activityThread.performLaunchactivity(activityThread.java:3103) 
        at android.app.activityThread.handleLaunchactivity(activityThread.java:3260) 
        at android.app.activityThread.access$1000(activityThread.java:218) 
        at android.app.activityThread$H.handleMessage(activityThread.java:1734) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:145) 
        at android.app.activityThread.main(activityThread.java:6934) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:372) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)

在我的build.gradle中设置以下内容:

implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
qxtianlong2009 回答:是否有使用android-ConstraintLayout的最低android版本?

documentation指出,ConstraintLayout目前仅作为支持库提供,您可以在从API级别9(姜饼)开始的Android系统上使用。

,

您的targetSdkVersion和compileSdkVersion应该相同。

targetSdkVersion 28
compileSdkVersion 28
,

ConstraintLayout在与Android 2.3(API级别9)及更高版本兼容的API库中可用。本页提供了在Android Studio 2.3或更高版本中使用ConstraintLayout构建布局的指南。

Build responsive UI with ContraintLayout

确保您的gradle中包含必需的模块。另请参见此链接以解决NullPointExceptions

检查您的ID是否与新设计库冲突。

检查您的XML文件名,确保您的XML文件名包含在MainActivity布局中:

setContentView(R.layout.xmlfilename_main); 
本文链接:https://www.f2er.com/3116802.html

大家都在问