android 无此类字段错误:类Lcom/disdemo/R $id中没有类型I的静态字段listView1;或其超类

sycxhyv7  于 2023-01-28  发布在  Android
关注(0)|答案(9)|浏览(152)

我有module1(在Android Studio中),activity_main.xml中有listView1(存在于module1的res中)。此模块的MainActivity正在从同一Android Studio项目中的另一个module2启动。
我已经尝试删除module1,并再次创建一个新的具有相同的res和java文件。但我仍然得到同样的问题。

rm5edbpk

rm5edbpk1#

我认为您在库和模块中的布局具有相同的名称,或者使用重复的资源ID膨胀多个xml布局。

q3aa0525

q3aa05252#

在两个模块中,您都有一个activity_main.xml。请重命名其中一个文件。
更新:@kundan kamal想表达的是,你在两个模块中都有一个布局文件,名称相似。

tv6aics1

tv6aics13#

你已经使用多个模块并且给予任何xml布局相同的名字然后给这个错误所以请重命名你的xml布局.

twh00eeo

twh00eeo4#

在我的例子中,标识符是不同的。我按了Build > Rebuild Project。这是因为我将res/layout划分为子文件夹,AS停止以注意XML更改。有关详细信息,请参见Rebuild required after changing xml layout files in Android Studio

67up9zun

67up9zun5#

让我更正,如果我没有错...我认为你有相同的名称,你的库和模块在您的项目,所以你必须重命名其中之一,然后它的工作罚款

rvpgvaaj

rvpgvaaj6#

这种错误曾经发生在我身上,但是使用的是string资源。我在翻译文件中配置了字符串,但是没有在默认的字符串资源文件中配置,所以这导致了崩溃。

2skhul33

2skhul337#

对我来说,proguard规则起作用了。我有两个级别的proguard。首先在我的依赖关系中,然后在我的应用程序中。必须在我的依赖关系Gradle中做这件事。
保存R.. 的东西。

-keepclassmembers class **.R$* {
    public static <fields>;
}

保留所有本机方法名及其类名。

-keepclasseswithmembernames class * {
    native <methods>;
}
yacmzcpb

yacmzcpb8#

检查您的xml是否在您编写逻辑以显示代码的相同模块/包/项目中。在我的情况下,我的xml在无法访问的不同模块中。

2guxujil

2guxujil9#

我在使用viewBinding时遇到了这个问题。类名是SearchViewHolder,布局资源名是search_view_holder。这导致了混乱和崩溃。

相关问题