- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
当我尝试将 AndroidX 用于我的 Android/Kotlin 项目时,KAE 恢复的很多 View 在我的代码中都失败了(类型不匹配),因为它们都是用 View!
类型定义的。
或在这里:
发生了什么?
这是我的工具栏所在的布局:
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.design.widget.AppBarLayout
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay"/>
</android.support.design.widget.AppBarLayout>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/framelayout"/>
</LinearLayout>
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="@color/navbar_background"
app:itemTextColor="#FFF"
app:itemIconTint="#FFF"
app:itemBackground="@drawable/drawer_selected_item"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/menu_drawer"/>
</androidx.core.widget.DrawerLayout>
这是我的 Gradle:app :
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
android {
compileSdkVersion 28
defaultConfig {
applicationId "my.app"
minSdkVersion 19
targetSdkVersion 28
versionCode 1
versionName "1.0.1"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.0.0'
implementation 'com.google.android.material:material:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha2'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation 'androidx.core:core-ktx:1.0.0'
implementation 'androidx.multidex:multidex:2.0.0'
implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.crashlytics.sdk.android:crashlytics:2.9.5'
implementation "org.jetbrains.anko:anko-commons:0.10.5"
implementation "org.jetbrains.anko:anko-design:0.10.4"
implementation "org.jetbrains.anko:anko-sdk25:0.10.5"
implementation "com.chibatching.kotpref:kotpref:2.5.0"
implementation "com.chibatching.kotpref:initializer:2.5.0"
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
implementation 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
implementation "androidx.room:room-runtime:2.1.0-alpha01"
annotationProcessor "androidx.room:room-compiler:2.1.0-alpha01"
kapt "androidx.room:room-compiler:2.1.0-alpha01"
implementation 'com.stripe:stripe-android:8.0.0'
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.stripe:stripe-android:8.0.0'
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'
implementation 'io.reactivex.rxjava2:rxkotlin:2.2.0'
implementation 'io.card:android-sdk:5.5.0'
// Smooch
implementation 'io.smooch:core:5.14.3'
implementation 'io.smooch:ui:5.14.3'
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.squareup.okhttp3:okhttp:3.11.0'
implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.firebase:firebase-messaging:17.3.4'
implementation 'androidx.annotation:annotation:1.0.0'
implementation 'com.github.bumptech.glide:glide:4.8.0'
implementation 'androidx.exifinterface:exifinterface:1.0.0'
implementation 'androidx.media:media:1.0.0'
implementation 'com.google.android.gms:play-services-location:16.0.0'
implementation 'com.davemorrissey.labs:subsampling-scale-image-view:3.10.0'
}
apply plugin: 'com.google.gms.google-services'
最佳答案
我找到了编辑布局文件的解决方案。使用 com.google.android.material.appbar.AppBarLayout
而不是 android.support.design.widget.AppBarLayout
。或者使用 androidx.appcompat.widget.Toolbar
而不是 android.support.v7.widget.Toolbar
。
不幸的是,您必须手动完成所有操作...
这是一个例子:
<?xml version="1.0" encoding="utf-8"?>
<androidx.drawerlayout.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.google.android.material.appbar.AppBarLayout
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:theme="@style/AppTheme.AppBarOverlay">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay"/>
</com.google.android.material.appbar.AppBarLayout>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/framelayout"/>
</LinearLayout>
<com.google.android.material.navigation.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="@color/navbar_background"
app:itemTextColor="#FFF"
app:itemIconTint="#FFF"
app:itemBackground="@drawable/drawer_selected_item"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/menu_drawer"/>
</androidx.drawerlayout.widget.DrawerLayout>
关于android - Kotlin Android Extensions 和 AndroidX 似乎没有正确转换 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53012516/
我回到我的 Android 项目来完成它的工作,突然我收到此错误消息 “无法解析 androidxAffected 模块:app” “错误:无法解析:androidx。受影响的模块:应用程序” 这是我
我今天尝试使用 Android Studio 中的“重构 -> 迁移到 AndroidX”选项将我当前的项目迁移到 AndroidX,每当我尝试编译我的应用程序时,我都会收到一个 Program ty
当我尝试构建应用程序时,它在构建选项卡上给了我这个错误 More than one file was found with OS independent path 'META-INF/androidx
我在尝试构建 Android 应用程序时遇到以下问题。我遇到了一些关于强制或使用手动依赖项解决策略的 android 帖子。这似乎并没有解决问题。 有人问过类似的问题:Similar stack ov
我刚刚通过 Android Studio 菜单选项 Refactor -> Refactor to AndroidX 迁移到 androidx 我收到以下错误: android.view.Inflat
我用 kotlin 开始新的 android 应用程序项目。我的 sdk gradle 配置是 compileSdkVersion 29 和 buildToolsVersion "29.0.1" 我试
我迁移到 AndroidX,然后如果我尝试使用 API 29 将项目运行到模拟器中,我会收到错误。 API 28 及之前的模拟器/真实设备没有问题。 java.lang.RuntimeExceptio
我正在开发 Android MVVM 应用程序。我只是手动切换到 androidx 库。这是我的 build.gradle 中的库: implementation 'com.google.code.g
在迁移到 AndroidX 并将所有 AndriodX 包更新到最新版本后,构建将失败,在 obj 中的构建生成的 XML 文件中显示三个类似的错误文件夹: \obj\Debug\100\lp\117
从 更新导航组合依赖后2.4.0-alpha03 至 2.4.0-alpha05 在尝试在可组合屏幕之间导航(例如从 taskComposable 导航到 listComposable 屏幕)后,我遇
我刚刚通过 Android Studio 菜单选项 重构 -> 重构到 AndroidX 迁移到 androidx 我收到以下错误: android.view.InflateException: Bi
我创建了一个 Android 应用程序,并从 Gallery 添加了“Navigation Drawer Activity”,我删除并重命名了菜单项。当我单击抽屉 Activity 中的任何菜单项启动
我正在制作一个项目,但是当我编译我的项目并在 Android Studio 上启动应用程序时,我的应用程序崩溃了。 在我的 Logcat 错误中 Process: com.passionategeek
完整的堆栈仅包括 android 核心代码: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean and
将项目迁移到 AndroidX 后出现以下错误:程序类型已经存在androidx.concurrent.futures.DirectExecutor 我的应用Gradle如下: configu
我想在 Play 商店中更新应用程序的版本,但在测试中我开始收到此错误。 Superclass androidx.core.app.f of androidx.activity.ComponentAc
AndoirdX 升级后出现错误。 android.databinding.tool.util.LoggedErrorException: failure, see logs for details.
将项目迁移到 AndroidX 后我遇到了这个崩溃 Unable to start activity ComponentInfo{oackagename/com.paymob.acceptsdk.P
我的导航 Controller 中有此错误,我已经更改了 XML 中的声明,但没有帮助,我更改了 Fragment 为 FragmenContainer,但没有帮助。谁能帮我解决这个错误? 日志: E
我创建了一个水平回收器 View ,其中加载了项目。之后,我需要选择该项目并执行点击事件。到这个存档(代码在下面可用),现在我想改变点击项目的颜色,剩下的项目应该被取消选择。如果我没有正确查询,请道歉
我是一名优秀的程序员,十分优秀!