android how to load images from internal memory in gridview
<p>I follow this tutorial <a href="http://vikaskanani.wordpress.com/2011/07/20/android-custom-image-gallery-with-checkbox-in-grid-to-select-multiple/" rel="nofollow">http://vikaskanani.wordpress.com/2011/07/20/android-custom-image-gallery-with-checkbox-in-grid-to-select-multiple/</a>
below is my code which load images from application internal memory and display using simple adapter but now i want to ad checkbox i found this tutorial which llad images from gallery i want to customize this sample code to load image from file location what do i do how do i change this code to load image from file location or how to customize its adapter to load my files what do i do help plz</p>

<pre><code>  &lt;!-----------------this is my code------&gt;
  GridView gridView;
  SimpleAdapter simpleAdapter;

  gridView =(GridView)findViewById(R.id.grid);
  gridView.setOnItemClickListener(new OnItemClickListener(){
    public void onItemClick(AdapterView&lt;?&gt; parent, View view, int  
                    position,long id) {


    if(currentFiles[position].isDirectory())
    {
        root = new File("/data/data/com.myexample/files 
            /"+FileName(currentFilePath[position])+"/");

        Log.e("Root first",root+ " ");

        currentFiles = root.listFiles();

        inflateListView(currentFiles);
    }
    else if(currentFiles[position].isFile())
    {
               inflateListView(currentFiles);
    } } });

     private void inflateListView(File[] files){

   List&lt;Map&lt;String,Object&gt;&gt; listItems = new ArrayList&lt;Map&lt;String,Object&gt;&gt;();

  for(int i=0;i&lt;files.length;i++)
  {      
    Map&lt;String, Object&gt; listItem = new HashMap&lt;String, Object&gt;();

    if(files[i].isDirectory())
    {
        listItem.put("icon", R.drawable.folder);
    }
    else
    {
        listItem.put("icon",  files[i]);
    }

    listItem.put("fileName", files[i].getName());
    listItems.add(listItem);
   }

    simpleAdapter=new SimpleAdapter(this,listItems,R.layout.line,new String[] 
    {"icon","fileName"},new int[]{R.id.icon,R.id.file_name});
     gridView.setAdapter(simpleAdapter);




   &lt;!--------this is sample code which load images from Gallery---------&gt;&gt;&gt;&gt;&gt;&gt;


  import android.widget.CheckBox;
  import android.widget.GridView;
  import android.widget.ImageView;
  import android.widget.Toast;

  public class AndroidCustomGalleryActivity extends Activity {
  private int count;
  private Bitmap[] thumbnails;
  private boolean[] thumbnailsselection;
  private String[] arrPath;
  private ImageAdapter imageAdapter;

   /** Called when the activity is first created. */
   @Override
  public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);

  final String[] columns = { MediaStore.Images.Media.DATA, 
   MediaStore.Images.Media._ID };
  final String orderBy = MediaStore.Images.Media._ID;
  Cursor imagecursor = managedQuery(
        MediaStore.Images.Media.EXTERNAL_CONTENT_URI, columns, 
   null,
        null, orderBy);
  int image_column_index =  
   imagecursor.getColumnIndex(MediaStore.Images.Media._ID);
   this.count = imagecursor.getCount();
  this.thumbnails = new Bitmap[this.count];
  this.arrPath = new String[this.count];
  this.thumbnailsselection = new boolean[this.count];
  for (int i = 0; i &lt; this.count; i++) {
    imagecursor.moveToPosition(i);
    int id = imagecursor.getInt(image_column_index);
    int dataColumnIndex = 
   imagecursor.getColumnIndex(MediaStore.Images.Media.DATA);
    thumbnails[i] = MediaStore.Images.Thumbnails.getThumbnail(
            getApplicationContext().getContentResolver(), id,
            MediaStore.Images.Thumbnails.MICRO_KIND, null);
    arrPath[i]= imagecursor.getString(dataColumnIndex);
  }
  GridView imagegrid = (GridView) findViewById(R.id.PhoneImageGrid);
  imageAdapter = new ImageAdapter();
  imagegrid.setAdapter(imageAdapter);
  imagecursor.close();

  final Button selectBtn = (Button) findViewById(R.id.selectBtn);
  selectBtn.setOnClickListener(new OnClickListener() {

    public void onClick(View v) {
        // TODO Auto-generated method stub
        final int len = thumbnailsselection.length;
        int cnt = 0;
        String selectImages = "";
        for (int i =0; i&lt;len; i++)
        {
            if (thumbnailsselection[i]){
                cnt++;
                selectImages = selectImages + arrPath[i] + 
 "|";
            }
        }
        if (cnt == 0){
            Toast.makeText(getApplicationContext(),
                    "Please select at least one image",
                    Toast.LENGTH_LONG).show();
        } else {
            Toast.makeText(getApplicationContext(),
                    "You've selected Total " + cnt +  
 "  
     image(s).",
                    Toast.LENGTH_LONG).show();
            Log.d("SelectedImages", selectImages);
        }
    }
    });
 }

  public class ImageAdapter extends BaseAdapter {
   private LayoutInflater mInflater;

   public ImageAdapter() {
    mInflater = (LayoutInflater) 
     getSystemService(Context.LAYOUT_INFLATER_SERVICE);
  }

   public int getCount() {
    return count;
   }

   public Object getItem(int position) {
    return position;
  }

    public long getItemId(int position) {
    return position;
   }

     public View getView(int position, View convertView, ViewGroup parent) {
     ViewHolder holder;
        if (convertView == null) {
        holder = new ViewHolder();
        convertView = mInflater.inflate(
                R.layout.galleryitem, null);
        holder.imageview = (ImageView)  
    convertView.findViewById(R.id.thumbImage);
        holder.checkbox = (CheckBox)  
   convertView.findViewById(R.id.itemCheckBox);

        convertView.setTag(holder);
    }
    else {
        holder = (ViewHolder) convertView.getTag();
    }
    holder.checkbox.setId(position);
    holder.imageview.setId(position);
    holder.checkbox.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            CheckBox cb = (CheckBox) v;
            int id = cb.getId();
            if (thumbnailsselection[id]){
                cb.setChecked(false);
                thumbnailsselection[id] = false;
            } else {
                cb.setChecked(true);
                thumbnailsselection[id] = true;
            }
        }
    });
    holder.imageview.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            int id = v.getId();
            Intent intent = new Intent();
            intent.setAction(Intent.ACTION_VIEW);
            intent.setDataAndType(Uri.parse("file://" + 
  arrPath[id]), "image/*");
            startActivity(intent);
        }
    });
    holder.imageview.setImageBitmap(thumbnails[position]);
    holder.checkbox.setChecked(thumbnailsselection[position]);
    holder.id = position;
    return convertView;
 }
 }
  class ViewHolder {
ImageView imageview;
CheckBox checkbox;
int id;
   }
 }
</code></pre>
