ppamorim

Untitled

Jul 27th, 2014
314
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.70 KB | None | 0 0
  1. package com.Tag_Interativa.vejo_ao_vivo.app.adapter;
  2.  
  3. import android.content.Context;
  4. import android.os.Handler;
  5. import android.view.LayoutInflater;
  6. import android.view.View;
  7. import android.view.ViewGroup;
  8. import android.widget.ImageView;
  9. import android.widget.LinearLayout;
  10. import android.widget.TextView;
  11.  
  12. import com.Tag_Interativa.vejo_ao_vivo.app.R;
  13. import com.Tag_Interativa.vejo_ao_vivo.app.core.TagApplication;
  14. import com.Tag_Interativa.vejo_ao_vivo.app.model.Camera;
  15. import com.comcast.freeflow.core.AbsLayoutContainer;
  16. import com.comcast.freeflow.core.FreeFlowItem;
  17. import com.comcast.freeflow.core.Section;
  18. import com.comcast.freeflow.core.SectionedAdapter;
  19. import com.google.android.gms.ads.AdView;
  20. import com.nostra13.universalimageloader.core.ImageLoader;
  21.  
  22. import java.util.ArrayList;
  23. import java.util.List;
  24.  
  25. public class CameraGridAdapter implements SectionedAdapter {
  26.  
  27.     private Section section;
  28.     private List<Camera> mList;
  29.  
  30.     private Context mContext;
  31.     private OnGridOpenDetailsClick mCallbackDetails;
  32.  
  33.     private ViewHolder mViewHolder;
  34.  
  35.     public CameraGridAdapter(Context context, List<Camera> list,  OnGridOpenDetailsClick onOpenDetailsClick) {
  36.         mContext = context;
  37.         section = new Section();
  38.         mCallbackDetails = onOpenDetailsClick;
  39.         section.setSectionTitle("CameraGridAdapter");
  40.         mList = list;
  41.     }
  42.  
  43.     @Override
  44.     public View getHeaderViewForSection(int section, View convertView, ViewGroup parent) {
  45.         return null;
  46.     }
  47.  
  48.     @Override
  49.     public Class[] getViewTypes() {
  50.         return new Class[] { LinearLayout.class };
  51.     }
  52.  
  53.     @Override
  54.     public Class getViewType(FreeFlowItem proxy) {
  55.         return LinearLayout.class;
  56.     }
  57.  
  58.     @Override
  59.     public boolean shouldDisplaySectionHeaders() {
  60.         return false;
  61.     }
  62.  
  63.     public void update(ArrayList<Camera> camera){
  64.  
  65.         for(Object o : camera){
  66.             section.getData().add(o);
  67.         }
  68.  
  69.     }
  70.  
  71.     @Override
  72.     public long getItemId(int section, int position) {
  73.         return section * 1000 + position;
  74.     }
  75.  
  76.     @Override
  77.     public View getItemView(int section, int position, View convertView, ViewGroup parent) {
  78.  
  79.         mViewHolder = new ViewHolder();
  80.  
  81.         if(convertView == null) {
  82.  
  83.             convertView = LayoutInflater.from(mContext).inflate(R.layout.adapter_thumbnail_big, parent, false);
  84.             mViewHolder.background = (ImageView) convertView.findViewById(R.id.big_thumbnail);
  85.             mViewHolder.cityName = (TextView) convertView.findViewById(R.id.city);
  86.             mViewHolder.cameraName = (TextView) convertView.findViewById(R.id.camera_name);
  87.             convertView.setTag(mViewHolder);
  88.  
  89.         } else {
  90.             mViewHolder = (ViewHolder) convertView.getTag();
  91.         }
  92.  
  93.         Camera camera = getItem(position);
  94.  
  95.         mViewHolder.cityName.setText(camera.getCity() + " / " + camera.getStatePrefix());
  96.         mViewHolder.cameraName.setText(camera.getTitle());
  97.  
  98.         mViewHolder.background.setTag(position);
  99.         mViewHolder.cameraName.setTag(position);
  100.         mViewHolder.cityName.setTag(position);
  101.  
  102.         mViewHolder.background.setOnClickListener(onItemClick);
  103.  
  104.         ImageLoader.getInstance().displayImage(TagApplication.URL_TEMP_SERVER + camera.getUrlImage(), mViewHolder.background);
  105.  
  106.         return convertView;
  107.     }
  108.  
  109.     private View.OnClickListener onItemClick = new View.OnClickListener() {
  110.         @Override
  111.         public void onClick(View view) {
  112.  
  113.             Camera camera = getItem(Integer.valueOf(view.getTag().toString()));
  114.             if (camera != null && mCallbackDetails != null) {
  115.                 mCallbackDetails.onItemClick(camera);
  116.             }
  117.  
  118.         }
  119.     };
  120.  
  121. //    //CRASH HERE
  122. //
  123. //    public Camera getItem(int i) {
  124. //
  125. //        Camera camera = new Camera();
  126. //
  127. //        if(mList != null) {
  128. //            return mList.get(i);
  129. //        } else {
  130. //            return camera;
  131. //        }
  132. //    }
  133.  
  134.     public Camera getItem(int i) {
  135.  
  136.         Camera camera = new Camera();
  137.  
  138.         if(mList != null) {
  139.             return (Camera)section.getData().get(i);
  140.  
  141.         } else {
  142.             return camera;
  143.         }
  144.     }
  145.  
  146.     @Override
  147.     public int getNumberOfSections() {
  148.         if(section.getData().size() == 0) return 0;
  149.         return 1;
  150.     }
  151.  
  152.     @Override
  153.     public Section getSection(int index) {
  154.         return section;
  155.     }
  156.  
  157.     private static class ViewHolder {
  158.  
  159.         private ImageView background;
  160.         private TextView cameraName;
  161.         private TextView cityName;
  162.  
  163.     }
  164.  
  165.     public static interface OnGridOpenDetailsClick {
  166.         public void onItemClick(Camera camera);
  167.     }
  168.  
  169. }
Advertisement
Add Comment
Please, Sign In to add comment