繁体   English   中英

片段中ListView的游标

[英]Cursor for listview in a fragment

如何在片段内使用光标? 这是我要设置的游标的片段,但它说ManagedQuery未定义:

Fragment1.java

private List<String> getMp3FilesFromSDCard() {
    //here we get the list of songs stored on the SD card and we update our singleton class     
        List<String> result = new ArrayList<String>();

        SingletonPlaylist playlist;

        playlist = SingletonPlaylist.getInstance();

        Uri uri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
        Cursor cursor;
        String[] projection = 
        {
            MediaStore.Audio.Media._ID,
            MediaStore.Audio.Media.ALBUM,
            MediaStore.Audio.Media.ARTIST,
            MediaStore.Audio.Media.TITLE,
            MediaStore.Audio.Media.DATA,
            MediaStore.Audio.Media.DISPLAY_NAME
        };

        String selection = MediaStore.Audio.Media.IS_MUSIC + " != 0";


        cursor = this.managedQuery(uri, projection, selection, null, null);

        cursor.moveToFirst();

        while (cursor.moveToNext())
        {
            result.add(cursor.getString(5));
            playlist.addSong(new Song(cursor.getString(0),cursor.getString(1),cursor.getString(2),cursor.getString(3),cursor.getString(4),cursor.getString(5)));
        }


        return result;
    }

我怎样才能解决这个问题?

尝试以下行代码:

getActivity().getContentResolver().query(uri, projection, selection, selectionArgs, sortOrder)

希望能帮助到你!!

与游标适配器一起使用listview的最佳方法是使用Loaders

它允许您按片段管理游标并在后台进行查询

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM