package com.ushahidi.android.app;
import java.util.ArrayList;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.LinearLayout;
public class CaptureImageTemplate extends ArrayAdapter<String>
{
private LayoutInflater mInflater;
private ArrayList<String> mIcons;
private int mViewResourceId;
/*
* - Class constructor.
*/
public CaptureImageTemplate(Context ctx, int viewResourceId, ArrayList<String> imagePath)
{
super(ctx, viewResourceId, imagePath);
mInflater = (LayoutInflater)ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
mIcons = imagePath;
mViewResourceId = viewResourceId;
}
/*
* -
*/
@Override
public long getItemId(int position) {
return 0;
}
/*
* -
*/
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
Bitmap selectedImage = null;
convertView = mInflater.inflate(mViewResourceId, null);
ImageView imageView = (ImageView) convertView.findViewById(R.id.DashBoardICON);
try
{
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 8;
options.inTempStorage = new byte[16*1024];
selectedImage = BitmapFactory.decodeFile(mIcons.get(position), options);// new BitmapDrawable(mIcons.get(position));
Log.d("Image", "Imgae Width" + options.outWidth + " Image Height " + options.outHeight);
if(selectedImage != null)
{
imageView.setImageBitmap(selectedImage);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(100, 100);
imageView.setLayoutParams(layoutParams);
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
}
}
catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
/*if(selectedImage != null)
selectedImage.recycle();
selectedImage = null;*/
}
/*Uri uri = Uri.fromFile(new File(mIcons.get(position)));
imageView.setImageURI((uri));*/
return convertView;
}
}