如何在手机内存中创建新文件夹“MyFolder”并将所有捕获的图像保存在该文件夹中? 请帮帮我。以下代码将所有图像保存到手机的默认图像库。我想创建新文件夹并将所有捕获的图像保存在该文件夹中。我该怎么办?如何在手机内存中创建文件夹并保存图像。
public class PhotoCaptureExample extends Activity
{
protected Button _button;
protected ImageView _image;
protected TextView _field;
protected String _path;
protected boolean _taken;
protected static final String PHOTO_TAKEN = "photo_taken";
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
_image = (ImageView) findViewById(R.id.image);
_field = (TextView) findViewById(R.id.field);
_button = (Button) findViewById(R.id.button);
_button.setOnClickListener(new ButtonClickHandler());
;
_path = Environment.getExternalStorageDirectory() + "/myfolder
/"+System.currentTimeMillis()+".jpg";
File dir = new File(_path);
try{
if(dir.mkdir()) {
System.out.println("Directory created");
}
else {
System.out.println("Directory is not created");
}}
catch(Exception e){
}
}
public class ButtonClickHandler implements View.OnClickListener
{
public void onClick(View view){
Log.i("MakeMachine", "ButtonClickHandler.onClick()");
startCameraActivity();
}
}
protected void startCameraActivity()
{
Log.i("MakeMachine", "startCameraActivity()");
File file = new File(_path);
Uri outputFileUri = Uri.fromFile(file);
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
startActivityForResult(intent, 0);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
Log.i("MakeMachine", "resultCode: " + resultCode);
switch(resultCode)
{
case 0:
Log.i("MakeMachine", "User cancelled");
break;
case -1:
onPhotoTaken();
break;
}
}
protected void onPhotoTaken()
{
Log.i("MakeMachine", "onPhotoTaken");
_taken = true;
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 4;
Bitmap bitmap = BitmapFactory.decodeFile(_path, options);
_image.setImageBitmap(bitmap);
_field.setVisibility(View.GONE);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState){
Log.i("MakeMachine", "onRestoreInstanceState()");
if(savedInstanceState.getBoolean(PhotoCaptureExample.PHOTO_TAKEN)) {
onPhotoTaken();
}
}
@Override
protected void onSaveInstanceState(Bundle outState) {
outState.putBoolean(PhotoCaptureExample.PHOTO_TAKEN, _taken);
}
}
检查并确认它会在您的手机默认图像稠密度和您提供给相机意图的路径中创建重复图像。 –
告诉我如何创建新文件夹?我dnr wana保存在phne默认画廊 –
是您的代码无法生成名为'myfolder'的新文件夹? –