android - 无法访问 POJO 类中的 getter

标签 android gson adapter pojo

我正在尝试访问我的响应模式中 POJO 类中的 getter 方法。

public class Event implements Parcelable{

    class Name {

        @SerializedName("text")
        @Expose
        public String eventName;

        public String getEventName() {
            return eventName;
        }
    }
.
. some parcelable stuff here
.
}

我正在尝试从我的适配器类中访问 getEventName 方法。我的代码是这样的(无法访问方法,geteventname):

holder.cardTextView.setText(eventsList.get(position).getEventName());

如果我在内部 pojo 类之外定义另一个变量,我可以访问它的 getter,但我只能访问 pojo 类中的那个。

编辑 我正在尝试读取这样的 json 响应,name 下的文本是我试图为其构建模态的文本。

    "events": [
        {
            "name": {
                "text": "textextextext", 
                "html": "textextextext"
            }, 
            "description": {} 
.
.
.

提前谢谢你。

最佳答案

JSON 嵌套很有趣。

name 是一个内部类。看起来 description 也是。

events":[ { "name":{ "text":"text ", "html":"something "}, "description":{ }, ... }]

在上面,有一个事件数组。

每个事件都有一个名称,每个名称都有一个“文本”和一个“html”。 每个事件还有一个描述,它有自己的字段。

你在正确的轨道上:

public class Event implements Parcelable{

@SerializedName("name")
@Expose
public Name name;

@SerializedName("description")
@Expose
public Description description;


public class Name {

    @SerializedName("text")
    @Expose
    public String eventName;

    public String getEventName() {
        return eventName;
    }
}

public class Description {

   //whatever fields are in the description object in the json
}

.
. some parcelable stuff here
.
}

您可以像这样访问它:holder.cardTextView.setText(eventsList.get(position).name.getEventName());

如果这可行,您可以通过向事件类添加自定义 getter 来清理它。

关于android - 无法访问 POJO 类中的 getter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48651285/

相关文章:

android - 菜单图标不显示

android - 在 Ice Cream Sandwich 和果冻 bean 中阻止主页按钮

java - 我如何将大的 bmp 转换为 png?

java - Gson 中的自循环引用

python - numpy 数组 <=> python DB-API 适配器?

android - 确认对话框的偏好

json - 将 Json 数组反序列化为 Scala 对象

android - 从 Activity/Fragment 更改适配器属性

android - 设置背景颜色的个性化 ListView 错误

android - Retrofit 没有序列化我的响应类中的第二个对象