Jetpack Compose点击OutlinedTextField报EditorInfoCompat无静态方法错误
问题原因
该闪退由AndroidX Core核心库版本与Jetpack Compose版本不兼容导致:
Jetpack Compose 1.0.x版本要求依赖的androidx.core:core库版本≥1.5.0,报错中提到的setInitialSurroundingText是AndroidX Core 1.5.0才新增的API。你项目内其他第三方依赖大概率引入了更低版本的core库,导致运行时加载的core库版本过低,缺少对应方法触发崩溃。
解决方案
- 首先强制指定项目AndroidX Core库版本为1.5.0及以上稳定版,在模块级
build.gradle的依赖块中添加如下配置:
(Kotlin DSL写法)
(Groovy写法)implementation("androidx.core:core-ktx:1.7.0")implementation 'androidx.core:core-ktx:1.7.0' - 若添加后仍存在版本冲突,可添加全局分辨率策略强制所有依赖统一使用指定版本Core库,在模块级
build.gradle的android代码块外添加如下配置:configurations.all { resolutionStrategy { force 'androidx.core:core-ktx:1.7.0' force 'androidx.core:core:1.7.0' } } - 修复你现有代码中的状态声明错误:你当前代码中
displayText的声明方式无法触发Compose重组,输入内容时文本框不会同步更新,修改为如下写法即可:var displayText by remember { mutableStateOf("") } - 完成上述修改后,执行
Clean Project再重新构建项目即可解决问题。
内容的提问来源于stack exchange,提问作者Florang
相关产品推荐
相关产品推荐

