我是应用开发的新手。我想开发一个可以在SD卡中保存多个图像的应用。在YouTube或此页面上进行了几项研究后,它们都无法帮助我,或者我可能听不懂它们。例如,android take multiple image with camera
该页面仅显示了如何将图像保存在数据库服务器中,但是我需要在sdcard上使用它们。我的代码存在问题,新捕获的图像将替换旧的图像。这是我的代码。

Button button;
ImageView imageView;
static final int CAM_REQUEST = 1;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.capimg);
    button = (Button) findViewById(R.id.button);
    imageView = (ImageView) findViewById(R.id.image_view);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {


            Intent camera_intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            Intent camera_intent2 = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            File file = getFile();
            camera_intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));
            startActivityForResult(camera_intent, CAM_REQUEST);


        }
    });


}

private File getFile() {
    File folder = new File("sdcard/UTP_app");
    if (!folder.exists()) {
        folder.mkdir();
    }

    File image_file = new File(folder, "cam_image.jpg");
    if (image_file.exists()) {
        return image_file;
    }
    File image_file2 = new File(folder, "cam_image2.jpg");
    if (image_file2.exists()) {
        return image_file2;
    }
    File image_file3 = new File(folder, "cam_image3.jpg");
    if (image_file3.exists()) {
        return image_file3;

    }


    return folder;
}


我希望我会有所改善。

最佳答案

只需每次更改相机意图的文件名即可。
例如,

private File getFile() {
    File folder = new File("sdcard/UTP_app");
    if (!folder.exists()) {
        folder.mkdir();
    }

    return new File(folder, new Date().getTime()+".jpg");
}

10-08 01:39