【问题标题】:Get ALBUM_ART from song从歌曲中获取 ALBUM_ART
【发布时间】:2014-01-19 19:05:11
【问题描述】:

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

这正是我需要的......

Android ListView: how to avoid database query in bindView()? Need to fetch one to many relationship data

但我不知道如何实现它。

来自歌曲加载器管理器的我的 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 以检索专辑艺术

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 加载器 getLoaderManager().initLoader(ID, null, MainActivity.this);

谢谢!

【问题讨论】:

    标签: android


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-30
      • 1970-01-01
      • 2017-09-09
      • 2017-09-19
      • 1970-01-01
      相关资源
      最近更新 更多