Search in sources :

Example 1 with Album

use of com.cyl.musiclake.bean.Album in project MusicLake by caiyonglong.

the class AlbumFragment method listener.

@Override
protected void listener() {
    mAdapter.setOnItemClickListener((adapter, view, position) -> {
        Album album = (Album) adapter.getItem(position);
        NavigateUtil.navigateToAlbum(getActivity(), album.getId(), album.getName(), new Pair<View, String>(view.findViewById(R.id.album), Constants.TRANSTITION_ALBUM));
    });
}
Also used : Album(com.cyl.musiclake.bean.Album) BindView(butterknife.BindView) RecyclerView(android.support.v7.widget.RecyclerView) TextView(android.widget.TextView) View(android.view.View)

Example 2 with Album

use of com.cyl.musiclake.bean.Album in project MusicLake by caiyonglong.

the class AlbumLoader method getAlbumFormDB.

private static Observable<List<Album>> getAlbumFormDB(Context context, Cursor cursor) {
    return Observable.create(subscriber -> {
        try {
            DBDaoImpl dbDaoImpl = new DBDaoImpl(context);
            List<Album> results = dbDaoImpl.getAlbumsForCursor(cursor);
            subscriber.onNext(results);
            subscriber.onComplete();
        } catch (Exception e) {
            e.printStackTrace();
            subscriber.onError(e);
        }
    });
}
Also used : DBDaoImpl(com.cyl.musiclake.data.source.db.DBDaoImpl) Album(com.cyl.musiclake.bean.Album)

Example 3 with Album

use of com.cyl.musiclake.bean.Album in project MusicLake by caiyonglong.

the class ArtistAlbumLoader method getAlbumsForArtist.

public static Observable<List<Album>> getAlbumsForArtist(final Context context, final String artistName) {
    return Observable.create(subscriber -> {
        try {
            DBDaoImpl dbDaoImpl = new DBDaoImpl(context);
            String sql = "SELECT * FROM music WHERE music.artist='" + artistName + "' GROUP BY album";
            Cursor cursor = dbDaoImpl.makeCursor(sql);
            List<Album> results = dbDaoImpl.getAlbumsForCursor(cursor);
            dbDaoImpl.closeDB();
            subscriber.onNext(results);
            subscriber.onComplete();
        } catch (Exception e) {
            e.printStackTrace();
            subscriber.onError(e);
        }
    });
}
Also used : DBDaoImpl(com.cyl.musiclake.data.source.db.DBDaoImpl) Album(com.cyl.musiclake.bean.Album) Cursor(android.database.Cursor)

Example 4 with Album

use of com.cyl.musiclake.bean.Album in project MusicLake by caiyonglong.

the class DBDaoImpl method getAlbumsForCursor.

/**
 * 获取专辑集合
 *
 * @param cursor
 * @return
 */
public List<Album> getAlbumsForCursor(Cursor cursor) {
    List<Album> results = new ArrayList<>();
    if (cursor != null && cursor.getCount() > 0) {
        while (cursor.moveToNext()) {
            Album album = new MusicCursorWrapper(cursor).getAlbum();
            LogUtil.d(TAG, "getAlbum:" + album.toString());
            results.add(album);
        }
    }
    // 记得关闭游标
    if (cursor != null) {
        cursor.close();
    }
    return results;
}
Also used : ArrayList(java.util.ArrayList) Album(com.cyl.musiclake.bean.Album)

Aggregations

Album (com.cyl.musiclake.bean.Album)4 DBDaoImpl (com.cyl.musiclake.data.source.db.DBDaoImpl)2 Cursor (android.database.Cursor)1 RecyclerView (android.support.v7.widget.RecyclerView)1 View (android.view.View)1 TextView (android.widget.TextView)1 BindView (butterknife.BindView)1 ArrayList (java.util.ArrayList)1