首先,我是一个新手,我正在尝试使用mediastore获取媒体文件的详细信息,并将详细信息保存在List中mitems。这是我在做什么
mitems
public class MusicRetriever { final String TAG = "MusicRetriever"; ContentResolver mContentResolver; // the items (songs) we have queried List<Item> mItems = new ArrayList<Item>();
在这里,我从内部和外部uri获取文件详细信息并将其保存在中arraylist。但是我无法获取特定列的详细信息。这就是我正在尝试的
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); } }
我如何从另一个类或片段中的Item类获得以下详细信息作为数组。
您可以像这样获取数组项。例如,这是示例
for(int i =0; i<= mItem.size(); i++){ String songName = mItem.get(i).getArtist(); String songAlbum = mItem.get(i).getAlbum(); }
首先全局设置此变量。
ListAdapter myadapter; > ArrayList<String> songList = new ArrayList<String>();
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);
我希望它能起作用。