我一直致力于一个输入孩子名字和年龄的应用程序,并根据输入显示特定数据。我将子信息存储在本地数据存储区中。
看一下这个简单存储的简单类:`public class
ChildInfo {
public String name;
public String gradeLevel;
public int gradeLevelInt;
public ChildInfo() {
}
public ChildInfo(String _name, String _gradeLevel, int _gradeLevelInt) {
gradeLevel = _gradeLevel;
name = _name;
}
}
在我的主片段中,我有一个名为 children 的ChildInfo类列表。
我打电话给他们是这样的:
ParseQuery query = new ParseQuery("Child");
query.fromLocalDatastore();
query.findInBackground(new FindCallback<ParseObject>() {
@Override
public void done(List<ParseObject> objects, ParseException e) {
if (e == null) {
children.clear(); //Clear it out before we regen every person!
for (int i = 0; i < objects.size(); i++) {
ChildInfo child = new ChildInfo();
child.name = objects.get(i).getString("Name");
child.gradeLevel = objects.get(i).getString("GradeLevel");
child.gradeLevelInt = objects.get(i).getInt("GradeLevelInt");
children.add(child);
}
for (int i = pagerAdapter.getCount() - 1; i > 0; i--){ pagerAdapter.removeView(pager, i); } //Removes all pages.
} else {
Log.e("HomeScreen", e.toString());
}
}
});
问题
此代码工作,一半时间。当我在onViewCreated方法中执行查询时,它将不返回任何内容。 object.size
为零,但是在我进入另一个页面并退回到此片段之后在onResume方法中调用时,它将起作用。有任何想法吗?我认为这可能是解析API的一个错误。
答案 0 :(得分:0)
好的。我找到了修复!出于某种原因,子列表在离开完成方法后丢失了添加到其中的所有内容。我重新安排了代码,这是新的Parse.com查询
strtod