package com.blablahlabs.excelsior; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.ObjectInput; import java.io.ObjectInputStream; import java.io.ObjectOutput; import java.io.ObjectOutputStream; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.List; import org.androidtitlan.ac.sharemenu.ShareMenu; import android.app.Activity; import android.app.ListActivity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.widget.ListView; import com.blablahlabs.excelsior.asynctasks.AsyncNotes; import com.blablahlabs.excelsior.asynctasks.AsyncPhotoGalleryImage; import com.blablahlabs.excelsior.beans.ExcelsiorBean; import com.blablahlabs.excelsior.beans.ExcelsiorFotoGaleria; import com.blablahlabs.excelsior.beans.notas.FotoGaleria; import com.blablahlabs.excelsior.recursos.IU; import com.blablahlabs.excelsior.recursos.Recursos; import com.commonsware.cwac.merge.MergeAdapter; public class GalleryListActivity extends ListActivity { private MergeAdapter listGalleryAdapter; private ExcelsiorBean excelsiorBean; private GalleryCustomAdapter nAdapter; private Activity activity; private int idArchivo; private List<FotoGaleria> bean; private ImageLoader imageLoader; public static ExcelsiorFotoGaleria excelsiorFotoGaleria; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); IU.setCustomTitle(this); setContentView(R.layout.video_section); Bundle extras = getIntent().getExtras(); byte[] bytes = extras.getByteArray("bean"); ByteArrayInputStream bis = new ByteArrayInputStream(bytes); ObjectInput in; try { in = new ObjectInputStream(bis); bean = (List<FotoGaleria>) in.readObject(); } catch (Exception e) { e.printStackTrace(); IU.showToast(GalleryListActivity.this , "Hubo un error al deserializar: " + e.getLocalizedMessage()); } buildGalleryList(); activity = this; } private void buildGalleryList() { listGalleryAdapter = new MergeAdapter(); nAdapter = new GalleryCustomAdapter(GalleryListActivity.this, R.layout.row_gallery, (ArrayList<FotoGaleria>) bean); listGalleryAdapter.addAdapter(nAdapter); //commit para actualizar la vista setListAdapter(listGalleryAdapter); } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.gallery_menu, menu); return true; } /* * Giving logic to the option menu */ @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.home_image: startActivity( new Intent(this, Home.class) ); break; case R.id.movies_image: ByteArrayOutputStream bos = new ByteArrayOutputStream(); ObjectOutput out; try { out = new ObjectOutputStream(bos); excelsiorBean = Home.excelsiorBean; out.writeObject(excelsiorBean.getVideosPagina()); } catch (IOException e) { e.printStackTrace(); IU.showToast(GalleryListActivity.this , "Hubo un error al serializar: " + e.getLocalizedMessage()); } byte[] bytes1 = bos.toByteArray(); startActivity( new Intent(this, VideoListActivity.class).putExtra("bean", bytes1)); break; case R.id.share_image: ShareMenu.buildShareMenu(getApplicationContext(), Recursos.TITULO_COMPARTIR, Recursos.COMPARTIR_HOME); break; } return true; } @Override protected void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); new AsyncPhotoGalleryImage(activity, bean.get(position).idGaleria).execute(); } }