0

我试图从光标创建一个列表视图已经好几个小时了,它只是不工作,这真的让我很不高兴!我有一个充满所需数据的游标,我需要获取这些数据并将它们添加到我的列表视图中我创建了一个从列表活动扩展的活动,并将以下代码放入其中:

ListView listv=(ListView)findViewById(R.id.ListView1);
        Cursor cu;              
        cu=myDbHelper.GetCursor();   

        ListAdapter adapter =new SimpleCursorAdapter(this,R.layout.rating,cu,new String[]{"Title"}, new int[]{R.id.listText},flag_that_I_dont_know_how_to_use);   
        listv.setAdapter(adapter);
        myDbHelper.close();
        cu.close();

我不知道如何使用该标志,并且不推荐使用 simplecursoradapter 的另一个构造函数,我有两种布局,一种是包含单个 textview 的评级布局,一种是包含 listview 的布局......我没有得到我想要的根据使用的标志,我得到一个空页面或者一个错误......请帮助!

编辑1:

我用 andriod:id/list 替换了 listview1 并在我的代码中写道:

Cursor cu;              
        cu=myDbHelper.GetCursor();   
        SimpleCursorAdapter adapter =new SimpleCursorAdapter(this,R.layout.rating,cu,new String[]{"Title"}, new int[]{R.id.listText},CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER);   
        setListAdapter(adapter);

这给了我一个空白页;

编辑 有人知道吗?或者有没有人有任何我可以查看的样本,看看为什么我的列表视图不起作用..?

4

2 回答 2

0

试试这个代码

ListView listv=(ListView)findViewById(R.id.ListView1);
                Cursor cu;              
                cu=myDbHelper.GetCursor();   
                SimpleCursorAdapter adapter =new SimpleCursorAdapter(this,R.layout.rating,cu,new String[]{"Title"}, new int[]{R.id.listText},0);   
                listv.setAdapter(adapter);
                myDbHelper.close();
                cu.close();
于 2013-09-05T20:12:20.180 回答
0

所以 edit1 工作的标志是:CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER 我只需要删除 cu.close(); 当我关闭光标时,我有一个白页,因为该页面正在从光标中获取其内容,并且当它关闭时,该页面没有更多内容!我删除了扩展列表视图,不需要我添加扩展活动......

于 2013-09-06T09:00:21.220 回答