package com.ved.musicmapapp.adapters; import java.util.List; import android.app.Activity; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Typeface; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.assist.FailReason; import com.nostra13.universalimageloader.core.listener.ImageLoadingListener; import com.ved.musicmapapp.R; import com.ved.musicmapapp.Objects.Playlist; public class UserPlaylistsAdapter extends BaseAdapter { private LayoutInflater inflat; private List<Playlist> playlist; private ImageLoader imageLoader; private DisplayImageOptions options; private Context mContext; // private int count = Statics.EXPAND_VIEW_COUNT; public UserPlaylistsAdapter(Activity cxt, List<Playlist> users) { if(cxt == null) return; inflat = (LayoutInflater) cxt.getSystemService(Context.LAYOUT_INFLATER_SERVICE); this.playlist = users; mContext = cxt; imageLoader = ImageLoader.getInstance(); options = new DisplayImageOptions.Builder() .showImageOnLoading(R.drawable.img_no_image) .showImageForEmptyUri(R.drawable.img_no_image) .showImageOnFail(R.drawable.img_no_image).cacheInMemory(true) .cacheOnDisc(true).bitmapConfig(Bitmap.Config.RGB_565).build(); } public void setData(List<Playlist> users) { this.playlist = users; notifyDataSetChanged(); } @Override public int getCount() { if(playlist != null) return playlist.size(); else return 0; } // public void expandData(){ // count += Statics.EXPAND_VIEW_COUNT; // count = (count>users.size()) ? users.size() : count; // notifyDataSetChanged(); // } @Override public long getItemId(int position) { return -1; } @Override public View getView(final int position, View v, ViewGroup parent) { Playlist uPlaylist = playlist.get(position); if (v == null) { v = inflat.inflate(R.layout.item_playlists, null); } final ImageView avatar = (ImageView) v.findViewById(R.id.imv_musician_av); uPlaylist.validatePlaylistAvatar(); imageLoader.displayImage(uPlaylist.getArtistAvatar(), avatar, options,new ImageLoadingListener() { @Override public void onLoadingStarted(String imageUri, View view) { } @Override public void onLoadingFailed(String imageUri, View view,FailReason failReason) { } @Override public void onLoadingComplete(String imageUri, View view,Bitmap loadedImage) { avatar.setImageBitmap(loadedImage); } @Override public void onLoadingCancelled(String imageUri, View view) { } }); TextView tvName = (TextView) v.findViewById(R.id.tv_name_musician); Typeface tf = Typeface.createFromAsset(mContext.getAssets(), "open_sans_regular.ttf"); tvName.setTypeface(tf); String name = uPlaylist.getPlaylistName(); tvName.setText(name); TextView tvNoSong = (TextView) v.findViewById(R.id.tvNoSong); String text = uPlaylist.getNumberOfTracks() + " Tracks"; // text += u.getArtist.size() > 1 ? mContext.getString( // R.string.user_details_artists, u.getArtists().size()) // : mContext.getString(R.string.user_details_artist, u // .getArtists().size()); // int count = u.getArtistcount(); // text += u.getArtistcount() > 1 ? mContext.getString( // R.string.user_details_artists, u.getArtistcount()) // : mContext.getString(R.string.user_details_artist, u // .getArtistcount()); tvNoSong.setTypeface(tf); tvNoSong.setText(text); return v; } @Override public Playlist getItem(int arg0) { return playlist.get(arg0); } }