Android改型在获取jsonobject时总是返回布尔类型的假值

Android改型在获取jsonobject时总是返回布尔类型的假值,android,json,boolean,retrofit,jsonobject,Android,Json,Boolean,Retrofit,Jsonobject,我是新使用改型的,这里我遇到了一个问题,改型总是为布尔类型的对象返回false,实际上是1(true),我正在检索 下面是我检索数据的pojo类 public class JobsModel implements Serializable { @SerializedName("posted_on") private String postedOn; @SerializedName("is_active") private boolean isActive=false; public Jobs

我是新使用改型的,这里我遇到了一个问题,改型总是为布尔类型的对象返回false,实际上是1(true),我正在检索

下面是我检索数据的pojo类

public class JobsModel implements Serializable {

@SerializedName("posted_on")
private String postedOn;
@SerializedName("is_active")
private boolean isActive=false;

public JobsModel(String postedOn, boolean isActive) {
    this.postedOn=postedOn;
    this.isActive=isActive;
}

public Boolean getPostedOn() {
    return postedOn
}

public void setPostedOn(String postedOn) {
    postedOn= postedOn
}

public Boolean getActive() {
    return isActive;
}

public void setActive(Boolean active) {
    isActive = active;
}
}


任何帮助都将不胜感激

您已将此初始化为false。这样做

private boolean isActive;

首先,您必须确保
@SerializedName(“is_active”)
正确且与您的json名称匹配

此外,您不需要像以下那样初始化值:

private boolean isActive=false;
我修改了你的接球手和接球手。你能试试这个吗:

public boolean getActive() {
    return isActive;
}

public void setActive(boolean active) {
    isActive = active;
}
如果您使用的是改型2.0,那么解析
boolean
时会出现一种奇怪的行为(我认为这是一个bug)


当我们试图解析名称以
“I”
开头的
boolean
json对象时,它总是返回false。这与你无关,但可能有这样的问题。如果可以,您可以尝试为对象使用不同的json名称。

在Java中,布尔是基本类型,其默认值为false 如果您的json处于活动状态值没有任何值,则默认情况下处于活动状态为false!
为避免此问题,请使用布尔型而不是布尔型

首先更改私有
布尔isActive=false
私有布尔激活

二变

   public void setActive(Boolean active) {
        isActive = active;   }

如果您的JSON包含任何以I开头的对象,那么请更改它,因为它将始终返回false。
希望这对你有帮助

最有可能的是,您的@SerializedName(“is_active”)是错误的。请检查这一行。那么,我们可以为booleani重构代码的值做些什么呢。试着替换我在回答中给出的代码。
public void setActive(boolean active) {
    Active = active;

}