当前位置: 首页 > 知识库问答 >
问题:

迁移到androidx后出现膨胀错误

皮自明
2023-03-14

当我尝试启动我的应用程序时,我的 MainActivity 在 oncreate() 方法中的“setContentView(R.layout.activity_main);” 中抛出此错误:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.sanchez.worldgramproject/com.example.sanchez.worldgramproject.Fragments.MainActivity}: android.view.InflateException: Binary XML file line #16: Binary XML file line #16: Error inflating class android.support.design.widget.BottomNavigationView

这个错误出现在迁移到androidx之后,经过进一步检查,我注意到Bottomnavigationview类中的导入语句已经过时(没有androidx格式,而是旧格式)。Bottomnavigationview类文件是只读的,因此我无法编辑它。

等级:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    buildToolsVersion '28.0.3'

    defaultConfig {
        applicationId "com.example.sanchez.worldgramproject"
        minSdkVersion 21
        targetSdkVersion 28
        multiDexEnabled true
        versionCode 0
        versionName "0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        debug {
            debuggable true
        }
    }
}



dependencies {

    compile fileTree(dir: 'libs', include: ['*.jar'])

    implementation 'com.github.madrapps:pikolo:1.1.6'
    implementation 'com.google.android.material:material:1.1.0-alpha02'
    implementation 'com.github.bumptech.glide:glide:3.8.0'
    implementation'com.firebaseui:firebase-ui-storage:2.3.0'
    implementation 'com.google.firebase:firebase-auth:16.1.0'
    implementation 'com.google.android.gms:play-services-auth:16.0.1'
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.cardview:cardview:1.0.0'
    implementation 'androidx.recyclerview:recyclerview:1.0.0'
    implementation 'com.jakewharton:butterknife:8.8.1'
    implementation 'androidx.multidex:multidex:2.0.1'
    implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.6'
    implementation 'de.hdodenhof:circleimageview:2.2.0'
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    implementation 'androidx.exifinterface:exifinterface:1.0.0'
    implementation 'com.google.firebase:firebase-storage:16.0.5'
    implementation 'com.google.android.gms:play-services-maps:16.0.0'
    implementation 'com.google.firebase:firebase-database:16.0.5'
    testImplementation 'junit:junit:4.12'

}


apply plugin: 'com.google.gms.google-services'

完整堆栈跟踪:https://pastebin.com/Yfek0YCH

有什么方法可以更改所有导入语句以适应新的androidx格式吗?我该如何为所有其他班级也这样做呢?

共有1个答案

乐正烨熠
2023-03-14

添加此依赖项:

dependencies {
    // https://mvnrepository.com/artifact/com.google.android.material/material
    implementation "com.google.android.material:material:1.0.0"
}

并使用com.google.android.material.bottomnavigation.BottomNavigationView

 类似资料:
  • 我正在使用Android Studio 3.2 Canary 14,并试图迁移现有项目以使用AndroidX。从https://developer.android.com/topic/libraries/support-library/androidx-rn听起来,我必须设置(这是在选择“重构到AndroidX…”选项时自动完成的)。我还将目标API级别更新为28。还有人看到这个问题吗? 未能转换

  • 我刚刚通过Android Studio菜单选项Refactor->Refactor to androidx迁移到androidx 我得到以下错误: Android.View.InflateException:二进制XML文件行#2:二进制XML文件行#2:膨胀类AndroidX.ConstraintLayout.ConstraintLayout时出错 知道吗? 堆栈跟踪:

  • 我正试图迁移到AndroidX,我们在我们的项目中使用这个库。然而,这目前在我们的项目中引起了一个问题: 无法解析对“module @ build type/compile class path”的依赖项:无法使用转换JetifyTransform转换文件“localytics-1.3.0.aar”以匹配属性{artifactType=processed-aar} 删除库会使此问题消失。在这个库被

  • 我试图将我的GLSurfaceView设置在xml布局以及其他UI元素上,并不断获得错误inflating类com.vi.cubo01。MyGLSurfaceView在LogCat. 以下是java代码: 以及xml:

  • 我在自定义控件中膨胀MvxImageView时遇到问题。 从我所做的研究中,我发现了几个嫌疑人 > < li >我是否应该将“如果”添加到“什么”中?(我看到这是关于android地图视图膨胀错误。 < li> 我创建的用户控件是不是都错了?我看到了一个使用SetContentView()而不是inflate的建议,因为它通过mvvmcross机制传递indlate请求,但在自定义视图中没有这样的

  • 问题内容: 我正在尝试创建一个扩展的自定义视图。这是我的班级定义文件 : 这是在我的ghostviewscreen.xml中: 现在,我在活动中进行了: 当被调用时,抛出一个异常: 谁能告诉我为什么会出现此错误?谢谢。 问题答案: 我想我弄清楚了为什么这没用。当我应该为两个参数“ Context,AttributeSet”的情况提供构造函数时,我只为一个参数“ context”的情况提供了构造函数