2016-07-09 15 views
0

首先我是一個新手,我試圖使用mediastore獲取媒體文件詳細信息並將詳細信息保存在列表mitems中。下面是我在做什麼如何從給定的類中獲取數組Item?

public class MusicRetriever { 
final String TAG = "MusicRetriever"; 
ContentResolver mContentResolver; 
// the items (songs) we have queried 
List<Item> mItems = new ArrayList<Item>(); 

在這裏,我來自內部和外部的URI獲取文件的詳細信息,並保存他們arraylist。但我無法獲得特定專欄的詳細信息。這就是我努力

public class Item { 
long id; 
String artist; 
String title; 
String album; 
long duration; 

public Item(long id, String artist, String title, String album, long duration) { 
    this.id = id; 
    this.artist = artist; 
    this.title = title; 
    this.album = album; 
    this.duration = duration; 
} 

public long getId() { 
    return id; 
} 

public String getArtist() { 
    return artist; 
} 

public String getTitle() { 
    return title; 
} 

public String getAlbum() { 
    return album; 
} 

public long getDuration() { 
    return duration; 
} 

public Uri getURI() { 
    return ContentUris.withAppendedId(
      android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, id); 
} 
} 

我怎樣可以得到下面的細節,從產品類在另一個類或片段的陣列。

回答

1

你可以像這樣得到你的數組項目。前this is the example

for(int i =0; i<= mItem.size(); i++){ 
     String songName = mItem.get(i).getArtist(); 
     String songAlbum = mItem.get(i).getAlbum(); 
    } 
  • ,如果你想設置你的數據的ListView,你可以這樣設置。

    首先在全局設置這個變量。

    ListAdapter myadapter;

    ArrayList<String> songList = new ArrayList<String>(); 
    

    和onCreate方法使用這樣的:

  • for(int i = 0; i<=mItem.size();i++) 
    { 
        songList.add(mItem.get(i).getArtist()); 
    } 
    
    myadapter = new ArrayAdapter<String>   
    (YourActivity.this, android.R.layout.simple_list_item_1, songList); 
    

    我希望它的作品。