繁体   English   中英

从歌曲中获取ALBUM_ART

[英]Get ALBUM_ART from song

首先,我应该说我是Android编程的新手...我正在检索手机中的所有歌曲,并使用LoadManager和BindView在ListView中显示以显示数据。 但是我无法在我的ImageView中显示ALBUM_ART。

这正是我所需要的...

Android ListView:如何避免在bindView()中进行数据库查询? 需要获取一对多关系数据

但我不知道如何实现。

我从歌曲loadermanager的BindView

@Override
public void bindView(View view, Context contex, Cursor cursor) {

TextView songText = (TextView) view.getTag(R.id.txt_title);
TextView artistText = (TextView) view.getTag(R.id.txt_artist);
ImageView albumImg = (ImageView) view.getTag(R.id.img_album);

albumId = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.ALBUM_ID));

我想在我的bindView中调用的其他其他LoaderManager来检索album_art

public class AlbumListItem implements LoaderManager.LoaderCallbacks<Cursor> {

    @Override
    public Loader<Cursor> onCreateLoader(int id, Bundle args) {

        String[]  projection =  {
                MediaStore.Audio.Albums._ID,
                MediaStore.Audio.Albums.ALBUM_ART,
     };


        return new CursorLoader(MainActivity.this, MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI, projection
                , MediaStore.Audio.Albums.ALBUM_ID + " = ?", new String[]{albumId}, null);
    }

    @Override
    public void onLoadFinished(Loader<Cursor> arg0, Cursor arg1) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onLoaderReset(Loader<Cursor> arg0) {
        // TODO Auto-generated method stub

    }

}

但是正如我所说,我不知道如何(或在何处)插入或初始化AlbumListItem loader getLoaderManager()。initLoader(ID,null,MainActivity.this);

谢谢!

我有一个类似的程序,其源代码位于https://github.com/pbirdsall/jasonisframed 随时查看,看看是否有帮助。 我基本上是拉文本和图像,将它们加载到数据库中,然后放入列表视图中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM