0

我在我的模型中使用 AutoValue,我想isTrue()在用户执行某些操作时更新模型的值。所以我需要帮助。这是我的模型。

@AutoValue
public abstract class Xyz implements Parcelable {

    @SerializedName("isTrue")
    public abstract boolean isTrue();

    @Nullable
    @SerializedName("lead_image_url")
    public abstract String lead_image_url();

    public static TypeAdapter<Readable> typeAdapter(Gson gson) {
        return new AutoValue_Readable.GsonTypeAdapter(gson);
    }
}
4

1 回答 1

0

的用例@AutoValue是创建

生成的不可变值类...

如果你想改变一个值,你必须创建一个类型的新实例,更新这个值。

这可以通过auto-value-with轻松实现。只需在您的类型中添加一个 with 方法。

public abstract Xyz withIsTrue(boolean isTrue);

扩展将实现将所有数据复制到新实例的方法。

于 2017-05-11T14:30:04.243 回答