Jes*_*rix 2 subclass return-type listener parse-platform
我是palassUser的子类,所以当我寻找用户我使用:
query.getFirstInBackground(new GetCallback<MySubClass>() {
@Override
public void done(MySubClass user, ParseException e) {
Run Code Online (Sandbox Code Playgroud)
但是当我需要用户getCurrentUser或logInInBackground时,我得到的是ParseUser而不是MySubClass.
我用这个方法:
MySubClass.logInInBackground(userName, "", new LogInCallback() {
@Override
public void done(ParseUser u, ParseException arg1) {
}
});
Run Code Online (Sandbox Code Playgroud)
但我希望回调像我的查询中一样返回MySubClass对象.
与此相同:
MySubClass.getCurrentUser()
Run Code Online (Sandbox Code Playgroud)
小智 6
同样的问题在这里
实际上你可以通过正确地继承你的ParseUser来解决这个问题.
@ParseClassName("_User")
public class User extends ParseUser {}
Run Code Online (Sandbox Code Playgroud)
然后在初始化解析之前注册您的类.
ParseObject.registerSubclass(User.class);
Run Code Online (Sandbox Code Playgroud)
然后,您可以转换为您自己的子类而不会出现转换错误:
User user = (User)ParseUser.getCurrentUser();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1009 次 |
| 最近记录: |