RecyclerView的项目内容不可见。

4
使用RecyclerView来展示JSON数据,每个Recycler Item包含一个图像和几个TextView。但是每当我运行我的应用程序时,我得到了RecyclerView列表,但没有得到其中的内容和图像。可能的原因是什么呢? proguard-rules.pro:
-dontwarn okio.**
-dontwarn retrofit.**
-keep class retrofit.** { *; }
-keepclassmembers,allowobfuscation interface * {
    @retrofit.http.** <methods>;
}

-dontwarn com.squareup.okhttp.**
-keepattributes Signature

你检查了列表适配器是否包含数据吗? - Linh
是的,它包含数据。 - Sun
你可以发布你的适配器吗? - Amir
我确定这与你的proguard或签名无关。检查适配器的构造函数(显示Toast),看看数据是否传递到适配器中。 - Amir
@Sun:在模拟器上工作正常,但在设备上不行。看起来很奇怪。尝试清理项目并重新运行。 - Sagar Trehan
显示剩余2条评论
1个回答

3
你的Proguard正在影响你的POJO。它被混淆了,因此不再起作用。这就是为什么在启用调试版本的minify后立即发生的原因。
你应该保留所有的POJO及其成员,因为它们被反射使用。从你的代码中看,你至少需要添加以下内容:
-keep class **.CountryPojo { *; }

但是,由于这可能不是全部,您应该保留用于POJO的包的所有类和成员

-keep class pkg.of.the.pojos.** { *; }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接