package com.ved.musicmapapp.fragments; import android.app.Activity; import android.graphics.Bitmap; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentTransaction; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ImageView; import android.widget.ListView; 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.MainActivity; import com.ved.musicmapapp.R; import com.ved.musicmapapp.Objects.Artist; import com.ved.musicmapapp.Objects.User; import com.ved.musicmapapp.adapters.LikeDetailAdapter; import com.ved.musicmapapp.utils.Statics; import com.ved.musicmapapp.utils.Utils; public class LikeDetailFragment extends Fragment { private ListView mList; private LikeDetailAdapter mAdapter; private Artist mArtist; private ImageLoader imageLoader; private DisplayImageOptions options; private Activity mContext; @Override public void onAttach(Activity activity) { // TODO Auto-generated method stub super.onAttach(activity); this.mContext = activity; } public void setArtist(Artist artist) { mArtist = artist; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater .inflate(R.layout.fragment_like_detail, container, false); } @Override public void onViewCreated(View view, Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); if (null == mContext || null == mArtist) return; mList = (ListView) view.findViewById(R.id.list_like_detail); // mList.setOnItemClickListener(new OnItemClickListener() { // // @Override // public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) { // String fbid = arg1.getTag().toString(); // if (null == Statics.hashUsers || null == Statics.hashUsers.get(fbid)) // return; // try { // User user = Statics.hashUsers.get(fbid); // UserDetailFragment fragment = new UserDetailFragment(); // fragment.setUser(user); // // FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction(); // fragmentTransaction.replace(R.id.frame_content, fragment); // fragmentTransaction.addToBackStack(null); // fragmentTransaction.commit(); // } // catch(Exception e){ // e.printStackTrace(); // } // } // }); mAdapter = new LikeDetailAdapter(mContext, mArtist) { @Override public void onClick(View v) { super.onClick(v); String fbid = v.getTag().toString(); if (null == Statics.hashUsers || null == Statics.hashUsers.get(fbid)) return; User user = Statics.hashUsers.get(fbid); UserDetailsFragment fragment = new UserDetailsFragment(); fragment.setUser(user); FragmentTransaction fragmentTransaction = ((MainActivity)mContext) .getSupportFragmentManager() .beginTransaction(); fragmentTransaction.replace(R.id.frame_content, fragment); fragmentTransaction.addToBackStack(null); fragmentTransaction.commit(); // UserDetailFragment fragment = new UserDetailFragment(); // fragment.setUser(user); // // FragmentTransaction fragmentTransaction = getFragmentManager() // .beginTransaction(); // fragmentTransaction.replace(R.id.frame_content, fragment); // fragmentTransaction.addToBackStack(null); // fragmentTransaction.commit(); } }; mList.setAdapter(mAdapter); 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(); TextView tv_name = (TextView) view.findViewById(R.id.tv_name_musician); tv_name.setText(mArtist.getName()); TextView tvNoSong = (TextView) view.findViewById(R.id.tvNoSong); tvNoSong.setText(mArtist.getSongs().size() + " likes"); final ImageView imv_av = (ImageView) view .findViewById(R.id.imv_musician_av); imageLoader.displayImage(mArtist.getAvatar(), imv_av, 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) { imv_av.setImageBitmap(loadedImage); } @Override public void onLoadingCancelled(String imageUri, View view) { } }); } @Override public void onDestroyView() { if (getView() != null) { ((ViewGroup) getView().getParent()).removeView(getView()); } super.onDestroyView(); } }