如何在我的画廊中创建空文件夹?

时间:2011-04-29 11:11:31

标签: java android gallery directory

  1. 如何在图库中创建文件夹
  2. 第一,我需要在图库中创建一个空文件夹 这是我的任务简单的文件夹创建无需在我的文件夹中共享图像,第一我想在图库中查看文件夹....现在我的图库显示了大量的图像....

    package galleryview.galleryview;
    
    import java.io.File;
    
    import android.app.Activity;
    import android.content.Context;
    import android.content.Intent;
    import android.database.Cursor;
    import android.net.Uri;
    import android.os.Bundle;
    import android.os.Environment;
    import android.provider.MediaStore;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.AdapterView;
    import android.widget.BaseAdapter;
    import android.widget.Gallery;
    import android.widget.GridView;
    import android.widget.ImageView;
    import android.widget.AdapterView.OnItemClickListener;
    
    public class Galleryview extends Activity {
     /** Called when the activity is first created. */
    private Cursor imagecursor, actualimagecursor;
    private int image_column_index, actual_image_column_index;
    GridView imagegrid;
    private int count;
    @Override
    public void onCreate(Bundle savedInstanceState) {
    
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        init_phone_image_grid();
    }
    private void init_phone_image_grid() {
      File mFile=new File("/sdcard/photos/newfolder");
      mFile.mkdir();
        String[] img = { MediaStore.Images.Thumbnails._ID };
        imagecursor = managedQuery(
    MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, img, null,
    null, MediaStore.Images.Thumbnails.IMAGE_ID + "");
        image_column_index = imagecursor
    .getColumnIndexOrThrow(MediaStore.Images.Thumbnails._ID);
        count = imagecursor.getCount();
        imagegrid = (GridView) findViewById(R.id.PhoneImageGrid);
        imagegrid.setAdapter(new ImageAdapter(getApplicationContext()));
        imagegrid.setOnItemClickListener(new OnItemClickListener(){
              public void onItemClick(AdapterView parent, View v,
     int position, long id) {
                    System.gc();
                    String[] proj = { MediaStore.Images.Media.DATA };
                    actualimagecursor = managedQuery(
    MediaStore.Images.Media.EXTERNAL_CONTENT_URI, proj,
    null, null, null);
                    actual_image_column_index = actualimagecursor
    .getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
                    actualimagecursor.moveToPosition(position);
                    String i = actualimagecursor.getString(actual_image_column_index);
                    System.gc();
                   // Intent intent = new Intent(getApplicationContext(),  
                   ViewImage.class);
                   //Intent intent=new Intent(Intent.ACTION_PICK);
                   //intent.setDataAndType(Uri.parse("file:///sdcard/"), "images/*");
                   //startActivityForResult(intent, 1);
            Intent intent = new Intent(getApplicationContext(),   
            ViewImage.class);
    
                   intent.putExtra("filename", i);
                   startActivity(intent);
                                                            }
        });
        }
    
    
      public class ImageAdapter extends BaseAdapter {
        private             Context mContext;
    
    
          public ImageAdapter(Context c) {
              mContext = c;
        }
        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) {
              System.gc();
              ImageView i = new ImageView(mContext.getApplicationContext());
              if (convertView == null) {
                    imagecursor.moveToPosition(position);
                    int id = imagecursor.getInt(image_column_index);
                    i.setImageURI(Uri.withAppendedPath(
    MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, ""
    + id));
                    i.setScaleType(ImageView.ScaleType.CENTER_CROP);
                    i.setLayoutParams(new GridView.LayoutParams(110,110));
              }
              else {
                    i = (ImageView) convertView;
              }
              return i;
        }
     }
        } 
    

1 个答案:

答案 0 :(得分:0)

用于在SD卡中创建新文件夹..

File wallpaperDirectory = new File("/sdcard/NewFolder/");
wallpaperDirectory.mkdirs();