-1

미디어 저장소의 노래 제목을 목록보기로 가져와 누군가 코드에서 나에게 무슨 문제가 있는지 설명 할 수 있습니까?커서 어댑터를 사용하여 목록보기에서 노래 받기

public class MainActivity extends AppCompatActivity { 
    Cursor cursour; 
    ContentResolver cr = this.getContentResolver(); 
    Uri uri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI; 
    String selection = MediaStore.Audio.Media.IS_MUSIC + "!= 0"; 
    String sortOrder = MediaStore.Audio.Media.TITLE + " ASC"; 
    Cursor cur = cr.query(uri, null, selection, null, sortOrder); 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, cur, new String[] { 
       "MediaStore.Audio.Media.EXTERNAL_CONTENT_URI" 
      }, 
      new int[] { 
       android.R.id.text1 
      }, 0); 
     ListView lv = (ListView) findViewById(R.id.songlist); 
     lv.setAdapter(adapter); 
    } 
} 

답변

0

사용이 목록보기로 노래를 얻을 수

public void getAudioList() { 
    String orderBy = MediaStore.Audio.Media.TITLE ; 
    String selection = MediaStore.Audio.Media.IS_MUSIC + " != 0"; 
    Cursor mCursor = getContentResolver().query(
      MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, 
      new String[] { MediaStore.Audio.Media.TITLE, 
        MediaStore.Audio.Media._ID }, selection, null, orderBy); 

    int count = mCursor.getCount(); 
    while (mCursor.moveToNext()) { 
     mSongsList.add(mCursor.getString(mCursor 
       .getColumnIndexOrThrow(MediaStore.Audio.Media.TITLE))); 
     SongsPath.add(mCursor.getLong(mCursor 
       .getColumnIndexOrThrow(MediaStore.Audio.Media._ID))); 
    } 
    mCursor.close(); 
} 

    lv = (ListView) findViewById(R.id.list); 
    getAudioList(); 
    ArrayAdapter arrayAdapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,mSongsList); 
    lv.setAdapter(arrayAdapter); 
관련 문제