媒体播放器与Android上的专辑封面(毕加索图书馆)

时间:2016-08-29 19:30:14

标签: android picasso audio-player albumart android-music-player

我是Android新手编程的新手。我有main_activity和list_adapter。我无法通过适配器将uri专辑封面发送给Picasso。而且我不明白 - 如何获得专辑封面?

代码main_activity

 if (cursor.moveToFirst()) {
                do {
                    Song song = new Song();

                    String data = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.TITLE));
                    String[] res = data.split("\\.");
                    song.setSongName(res[0]);
                    //Log.d("test",res[0] );
                    song.setSongFullPath(cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.DATA)));
                    song.setSongId(cursor.getInt(cursor.getColumnIndex(MediaStore.Audio.Media._ID)));
                    song.setSongFullPath(cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.DATA)));
                    song.setSongAlbumName(cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.ARTIST)));
                    song.setSongUri(ContentUris.withAppendedId(
                            android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
                            cursor.getInt(cursor.getColumnIndex(MediaStore.Audio.Media._ID))));
                    String duration = getDuration(Integer.parseInt(cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.DURATION))));
                    song.setSongDuration(duration);


                    songList.add(song);
                } while (cursor.moveToNext());
                return songList;
            }
            cursor.close();

代码list_adapter

 @Override
public View getView(int position, View convertView, ViewGroup parent) {
    if (convertView == null) {
        //Layout inflate for list item
        convertView = LayoutInflater.from(mContext).inflate(R.layout.song_list_item, null);
    }
    ImageView mImgSong = (ImageView) convertView.findViewById(R.id.img_listitem_file);
    Picasso.with(mContext).load(Uri.parse("file://"+songList.get(position).getSongFullPath())).placeholder(R.drawable.no_clipart).into(mImgSong);
    TextView mtxtSongName = (TextView) convertView.findViewById(R.id.txt_listitem_filename);
    TextView mTxtSongAlbumName = (TextView) convertView.findViewById(R.id.txt_listitem_albumname);
    TextView mTxtSongDuration = (TextView) convertView.findViewById(R.id.txt_listitem_duration);


  //  mImgSong.setImageResource(R.drawable.no_clipart);
    mtxtSongName.setText(songList.get(position).getSongName());
    mTxtSongAlbumName.setText(songList.get(position).getSongAlbumName());
    mTxtSongDuration.setText(songList.get(position).getSongDuration());

    return convertView;
}

0 个答案:

没有答案