2013-10-15 7 views
0

Извините, если мне не хватает чего-то очень простого здесь, я очень новичок в программировании.Что такое хорошая реализация simpleCursorAdapter от объекта Mediastore?

Я пытаюсь создать медиаплеер и обнаружил и использовал пример использования 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(); 
     } 
    } 

Теперь я ищу использовать simpleCursorAdaptor для ListView, но не уверен, как идти об этом, или где поставить его. Любая помощь будет оценена.

ответ

0

Вам нужно будет реализовать свой собственный SimpleCursorAdapter, как вы делаете это с помощью Activities.

MediaStoreCursorAdapter extends SimpleCursorAdapter { . . . 

Чтобы назначить его в ListView получить ссылку на него в OnCreate деятельности через

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

А затем присвоить адаптер к нему:

myListView.setAdapter(myAdapter); 

Если Youre новичок вы может захотеть взглянуть на некоторые базовые учебные пособия, чтобы лучше понять язык и рамки, прежде чем погрузиться в глубь.

Удачи!

+0

Спасибо за ваше время, я обновлю эту тему более подробно, как только я попробовал еще несколько вещей на основе этого совета. Кажется, есть несколько способов сделать это! –

Смежные вопросы