0

我将如何将图像保存到应用程序内的文件夹中?我希望最终允许用户拍照和上传,并允许其他人“评价它”。我是android新手,所以如果这是非常基本的,我很抱歉。这就是我到目前为止所拥有的。

public void onClick(View v) { // TODO 自动生成的方法存根

            Intent picture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            //MainActivity.this.startActivity(picture);

             startActivityForResult(picture, 1);
             onActivityResult(1, 1, picture){

             }

        }
4

3 回答 3

0

您是否尝试将其保存在其他地方,然后尝试移动它?

您可以编写一个文件,将其保存到其原始目录,然后自动移动到您希望执行的目录中。

您显然已经有足够的技能在该可执行文件中重新定位文件。

抱歉,如果我对整个 stackoverflow 社区的帮助不大,我是全新的。

希望我对你有所帮助!

于 2013-02-10T02:39:49.200 回答
0

阅读本教程: http: //developer.android.com/training/camera/photobasics.html 希望这会对你有所帮助..

于 2013-02-10T02:50:40.860 回答
0

使用这段代码。解释在代码之后

Intent getCameraImage = new Intent("android.media.action.IMAGE_CAPTURE");

File cameraFolder;

if (android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED))
    cameraFolder = new File(android.os.Environment.getExternalStorageDirectory(),"YOUR_FOLDER_NAME/");
else
    cameraFolder= StatusUpdate.this.getCacheDir();
if(!cameraFolder.exists())
    cameraFolder.mkdirs();

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd'T'HHmmss");
String timeStamp = dateFormat.format(new Date());
String imageFileName = "picture_" + timeStamp + ".jpg";

File photo = new File(Environment.getExternalStorageDirectory(), "YOUR_FOLDER_NAME/" + imageFileName);
getCameraImage.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo));
initialURI = Uri.fromFile(photo);

startActivityForResult(getCameraImage, 1);

这段代码的本质是:

  • 使用提供的名称创建一个文件夹,它的名称为 YOUR_FOLDER_NAME(为方便起见更改此名称)
  • picture_" + timeStamp + ".jpg可确保将多个图像存储在您选择的文件夹中,每个图像都有一个新的时间戳。自然,时间戳将是当前时间。
  • 是全局定义的initialURI,以帮助您处理稍后拍摄的图像。例如,将其显示在ImageView
于 2013-02-10T06:16:32.793 回答