Search in sources :

Example 1 with Image

use of com.zype.android.webapi.model.playlist.Image in project zype-android by zype.

the class PlaylistCursorAdapter method loadImage.

private void loadImage(final Context context, final Cursor cursor, final PlaylistViewHolder viewHolder) {
    final String thumbnailsString = cursor.getString(COL_PLAYLIST_THUMBNAILS);
    final String imagesString = cursor.getString(COL_PLAYLIST_IMAGES);
    String placeholderUrl = "https://placeholdit.imgix.net/~text?txtsize=40&txt=No%20thumbnail%20available&w=720&h=240";
    // Find playlist thumbnail
    Image playlistMobileThumbnail = null;
    if (imagesString != null) {
        Type imageType = new TypeToken<List<Image>>() {
        }.getType();
        List<Image> images = (new Gson().fromJson(imagesString, imageType));
        if (images.size() > 0) {
            for (Image image : images) {
                if (image.getTitle().equals(PLAYLIST_THUMBNAIL_TITLE)) {
                    playlistMobileThumbnail = image;
                    break;
                }
            }
        }
    }
    if (playlistMobileThumbnail != null) {
        UiUtils.loadImage(context, playlistMobileThumbnail.getUrl(), 0, viewHolder.thumbnail, viewHolder.progressBar);
    } else if (thumbnailsString != null) {
        Type thumbnailType = new TypeToken<List<Thumbnail>>() {
        }.getType();
        List<Thumbnail> thumbnails = (new Gson().fromJson(thumbnailsString, thumbnailType));
        if (thumbnails.size() > 0) {
            UiUtils.loadImage(context, thumbnails.get(1).getUrl(), 0, viewHolder.thumbnail, viewHolder.progressBar);
        } else {
            UiUtils.loadImage(context, placeholderUrl, 0, viewHolder.thumbnail, viewHolder.progressBar);
        }
    } else {
        UiUtils.loadImage(context, placeholderUrl, 0, viewHolder.thumbnail, viewHolder.progressBar);
    }
}
Also used : Type(java.lang.reflect.Type) TypeToken(com.google.gson.reflect.TypeToken) Gson(com.google.gson.Gson) List(java.util.List) Image(com.zype.android.webapi.model.playlist.Image) Thumbnail(com.zype.android.webapi.model.video.Thumbnail)

Aggregations

Gson (com.google.gson.Gson)1 TypeToken (com.google.gson.reflect.TypeToken)1 Image (com.zype.android.webapi.model.playlist.Image)1 Thumbnail (com.zype.android.webapi.model.video.Thumbnail)1 Type (java.lang.reflect.Type)1 List (java.util.List)1