gpt4 book ai didi

android - ParseObject 子类不能在构造函数中进行更改

转载 作者:行者123 更新时间:2023-11-29 01:39:09 27 4
gpt4 key购买 nike

我有一个带有构造函数的 ParseObject 子类,它试图用新的 UUID 设置一个字段:

@ParseClassName("Results")
public class Results extends ParseObject {
public static final String FIELD_UUID = "uuid";

public Results() {
// Default constructor
setUuid();
}

public String getUuid() {
return getString(FIELD_UUID);
}

public void setUuid() {
UUID uuid = UUID.randomUUID();
put(FIELD_UUID, uuid.toString());
}

...
}

但是,显然我无法在构造函数中调用 setUuid(),因为发生了以下错误:

java.lang.IllegalStateException: A ParseObject subclass default constructor must not make changes to the object that cause it to be dirty.

我更愿意在每次创建新的 Results 对象时自动设置 UUID,而不是创建一个新对象,然后调用 setUuid()。这是否可行,或者是否有解决方法?

最佳答案

Pointers 绝对是最佳选择。

我找到的最好的方法是使用 EventBus 传递整个 ParseObjects,你会在我对这个问题的回答中找到一个例子:Getting Parse Object ID from onListItemClick

它非常简单,省去了您进行额外查询来定位传递的对象的麻烦。

关于android - ParseObject 子类不能在构造函数中进行更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25896462/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com