我子类化parseUser,所以当我寻找用户时,我使用:

query.getFirstInBackground(new GetCallback<MySubClass>() {

            @Override
            public void done(MySubClass user, ParseException e) {


但是当我需要用户
我得到ParseUser而不是MySubClass的getCurrentUser或logInInBackground。

我使用这种方法:

MySubClass.logInInBackground(userName, "", new LogInCallback() {

    @Override
    public void done(ParseUser u, ParseException arg1) {

    }
});


但是我希望回调像我的查询一样返回MySubClass对象。

与此相同:

MySubClass.getCurrentUser()

最佳答案

同样的问题在这里。

实际上,您可以通过正确子类化ParseUser来解决此问题。

@ParseClassName("_User")
public class User extends ParseUser {}


然后在初始化解析之前注册您的课程。

ParseObject.registerSubclass(User.class);


然后,您可以强制转换为自己的子类,而不会发生强制转换错误:

User user = (User)ParseUser.getCurrentUser();

关于parse-platform - ParseUser返回类型的解析子类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25530486/

10-08 23:48