I want to make an app which shows text files like docs,pdf,txt etc in a grid view just like ImageView shows images.Is there any View for these files in android. The code is given below,in this I am able to view images in grid but not document files.
 public class MainActivity extends Activity implements  OnItemClickListener{
public class ImageAdapter extends BaseAdapter {
 private Context mContext;
 ArrayList<String> itemList = new ArrayList<String>();
 public ImageAdapter(Context c) {
  mContext = c; 
 }
 void add(String path){
  itemList.add(path); 
 }
  @Override
   public int getCount() {
  return itemList.size();
 }
 @Override
 public Object getItem(int arg0) {
 // TODO Auto-generated method stub
 return null;
 }
 @Override
 public long getItemId(int position) {
 // TODO Auto-generated method stub
 return 0;
}
 @Override
 public View getView(int position, View convertView, ViewGroup parent) {
  ImageView imageView;
     if (convertView == null) {  // if it's not recycled, initialize some attributes
         imageView = new ImageView(mContext);
         imageView.setLayoutParams(new GridView.LayoutParams(70, 70));
         imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
         imageView.setPadding(3, 3, 3, 3);
     } else {
         imageView = (ImageView) convertView;
     }
     Bitmap bm = decodeSampledBitmapFromUri(itemList.get(position), 100, 100);
     imageView.setImageBitmap(bm);
     return imageView;
 }
 public Bitmap decodeSampledBitmapFromUri(String path, int reqWidth, int reqHeight) {
  Bitmap bm = null;
 // First decode with inJustDecodeBounds=true to check dimensions
 final BitmapFactory.Options options = new BitmapFactory.Options();
 options.inJustDecodeBounds = true;
 BitmapFactory.decodeFile(path, options);
 // Calculate inSampleSize
 options.inSampleSize = calculateInSampleSize(options, reqWidth, reqHeight);
 // Decode bitmap with inSampleSize set
 options.inJustDecodeBounds = false;
 bm = BitmapFactory.decodeFile(path, options); 
 return bm;   
}
public int calculateInSampleSize(
 BitmapFactory.Options options, int reqWidth, int reqHeight) {
// Raw height and width of image
 final int height = options.outHeight;
 final int width = options.outWidth;
 int inSampleSize = 1;
 if (height > reqHeight || width > reqWidth) {
  if (width > height) {
  inSampleSize = Math.round((float)height / (float)reqHeight);    
 } else {
  inSampleSize = Math.round((float)width / (float)reqWidth);    
 }   
 }
 return inSampleSize;    
 }
 }
 ImageAdapter myImageAdapter;
 @Override
 public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    GridView gridview = (GridView) findViewById(R.id.gridview);
    myImageAdapter = new ImageAdapter(this);
    gridview.setAdapter(myImageAdapter);
    gridview.setOnItemClickListener(this);
    String ExternalStorageDirectoryPath = Environment
      .getExternalStorageDirectory()
      .getAbsolutePath();
    String targetPath = ExternalStorageDirectoryPath + "/img/";
    Toast.makeText(getApplicationContext(), targetPath, Toast.LENGTH_LONG).show();
    File targetDirector = new File(targetPath);
    File[] files = targetDirector.listFiles();
    for (File file : files){
    myImageAdapter.add(file.getAbsolutePath());
     } 
    }
  @Override
  public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
 }
}
 
     
    