0

抱歉,如果我在这里遗漏了一些非常简单的东西,我对编程很陌生。

我正在尝试构建一个媒体播放器,并发现了使用 MediaStore.Audio 为播放列表收集媒体的示例。我现在需要实现一个适配器来把它放到一个列表视图中供用户选择。我的印象是,这可能是实现简单曲目列表的最优雅的方式。

到目前为止,我有:

SimpleCursorAdapter myAdapter;
        String[] STAR = { "*" };
        Uri allsongsuri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
        String selection = MediaStore.Audio.Media.IS_MUSIC + " != 0";

        Cursor cursor = getContentResolver().query(allsongsuri, STAR, selection, null, null);

        if (cursor != null) {
            if (cursor.moveToFirst()) {
                do {
                    String song_name = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.DISPLAY_NAME));
                    int song_id = cursor.getInt(cursor.getColumnIndex(MediaStore.Audio.Media._ID));

                    String fullpath = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.DATA));

                    String album_name = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.ALBUM));
                    int album_id = cursor.getInt(cursor.getColumnIndex(MediaStore.Audio.Media.ALBUM_ID));

                    String artist_name = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.ARTIST));
                    int artist_id = cursor.getInt(cursor.getColumnIndex(MediaStore.Audio.Media.ARTIST_ID));
                } while (cursor.moveToNext());
            }
            cursor.close();
        }
    }

现在我正在寻找使用简单的CursorAdaptor 来listView,但不知道如何去做,或者把它放在哪里。任何帮助将不胜感激。

4

1 回答 1

0

您必须像使用活动一样实现自己的 SimpleCursorAdapter。

MediaStoreCursorAdapter extends SimpleCursorAdapter { . . .

要将其分配给您的 ListView,请通过 Activity 的 OnCreate 获取对它的引用

ListView myListView = (ListView) findViewById(R.id.mylistview);

然后将适配器分配给它:

myListView.setAdapter(myAdapter);

如果您是初学者,您可能想查看一些基本教程,以便在深入了解之前更好地了解语言和框架。

祝你好运!

于 2013-10-15T10:24:04.393 回答