Android 分析列表视图中显示的查询

Android 分析列表视图中显示的查询,android,parse-platform,android-query,Android,Parse Platform,Android Query,我希望对我的解析数据库进行查询,并在列表视图中显示这些信息 目前在我的活动中,我已将活动的ContentView设置为xml文档,该文档具有id为resultsView的列表 在我的Parse数据库中,我有一个名为Testing的表,希望从列“a”接收包含字符串“Test1”的所有信息。然后我想在resultsView列表中显示此信息 ParseQuery<ParseObject> query = ParseQuery.getQuery("Testing"); query.wher

我希望对我的解析数据库进行查询,并在列表视图中显示这些信息

目前在我的活动中,我已将活动的ContentView设置为xml文档,该文档具有id为resultsView的列表

在我的Parse数据库中,我有一个名为Testing的表,希望从列“a”接收包含字符串“Test1”的所有信息。然后我想在resultsView列表中显示此信息

ParseQuery<ParseObject> query = ParseQuery.getQuery("Testing");

query.whereEqualTo("A","Test1");

query.findInBackground(new FindCallback<ParseObject>()

{
    public void done(List<ParseObject> resultsList, ParseException e) {
        if (e == null) {

        } else {

        }
    }

});
ParseQuery query=ParseQuery.getQuery(“测试”);
查询:whereEqualTo(“A”、“Test1”);
findInBackground(新的FindCallback()
{
公共作废完成(列表结果列表,Parsee异常){
如果(e==null){
}否则{
}
}
});

这个查询有什么问题,我该如何将查询到的信息添加到resultsView列表中?

您是否初始化了解析,如下所示

Parse.initialize(_App, key1, key2);
要将结果添加到结果视图列表,请执行以下操作

public class CopyOfShareActivity extends Activity {

    String[] resultsAsString = {""};
    ListView listView;

    ArrayAdapter<String> adapter;

    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.search);
        adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, resultsAsString);
        ParseQuery<ParseObject> query = ParseQuery.getQuery("Testing");

        query.whereEqualTo("A","Test1");

        query.findInBackground(new FindCallback<ParseObject>(){
             public void done(List<ParseObject> resultsList, ParseException e) {
                 if (e == null) {
                    resultsAsString = new String[resultsList.size()];
                    for(int index = 0; index < resultsList.size(); index++){
                       //.get => .getString
                       resultsAsString[index] = resultsList.get(index).getString("field you want to display");
                    }
                    adapter.notifyDataSetChanged();

                 } else {
                     Log.w("Parse query", e.getMessage());
                 }
             }
        });

        listView = (ListView) findViewById(R.id.ResultView);
        listView.setAdapter(adapter);
    }
}
公共类CopyOfShareActivity扩展了活动{
字符串[]resultsassString={”“};
列表视图列表视图;
阵列适配器;
@凌驾
创建公共空间(捆绑冰柱){
超级冰柱;
setContentView(R.layout.search);
适配器=新阵列适配器(此,
android.R.layout.simple_list_item_1,resultsaString);
ParseQuery=ParseQuery.getQuery(“测试”);
查询:whereEqualTo(“A”、“Test1”);
findInBackground(新的FindCallback(){
公共作废完成(列表结果列表,Parsee异常){
如果(e==null){
resultsAsString=新字符串[resultsList.size()];
对于(int index=0;index.getString
resultsAsString[index]=resultsList.get(index).getString(“要显示的字段”);
}
adapter.notifyDataSetChanged();
}否则{
w(“解析查询”,e.getMessage());
}
}
});
listView=(listView)findViewById(R.id.ResultView);
setAdapter(适配器);
}
}
这应该可以,我希望这次

适配器已安装 android.R.layout.simple\u list\u item\u 1


这是listView的默认布局。考虑一下ListVIEW是如何设计的。例如,如果您希望它看起来不同,您可以设计自己的布局,并用自定义ListView表示形式的名称替换“simple_list_item_1”

哈哈,代码可以编译,但是当启动ActivityOK时应用程序崩溃了2件事:这仍然是第一个被调用的吗?“Parse.initialize(_App,key1,key2);”如果是的话,你能给我提供一个stacktrace吗?是的,基本上我有一个实用类,它保存了所有的信息,在发布到数据库时工作。对不起,我是个白痴。基本上,回调是在查询结果之后执行的。这意味着初始化数组的代码是在设置listView之后执行的,listView提供了一个空数组,您的应用程序显然不喜欢它。不管怎么说,lemme在获得答案后再次更新答案,这似乎是加载项listview.getAdapter().add(resultsaString[index])的问题;以及notifyDatasetChanged调用