如何拍摄多张照片并将其显示在imageview中?

时间:2019-01-27 16:22:37

标签: java android image android-imageview

我的问题看似很简单,但我真的对此感到绝望...我目前正在尝试拍摄几张照片,然后在imageview中直接实现它们。目前,我只能用一张图像来完成,而不能用两张图像来完成,甚至用三张图像来完成。我已经测试了循环和分叉,但还没有找到窍门...这些照片随后存储在Firebase中,供用户稍后恢复。按照我的代码顺序,向您展示我的不同功能。 因此,我的要求很简单,有人会想办法补救吗?

第一个功能显示我的活动结果。也就是说,在我的图像上捕获的图像以及第二个功能是将图像存储在Firebase Storage中:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_PICTURE_CAPTURE && resultCode == RESULT_OK) {
        File imgFile = new  File(pictureFilePath);
        if(imgFile.exists())            {
            image.setImageURI(Uri.fromFile(imgFile)); 
        }
    }
}


private void addToCloudStorage() {
        File f = new File(pictureFilePath);
        Uri picUri = Uri.fromFile(f);
        final String cloudFilePath = deviceIdentifier +picUri.getLastPathSegment();

        FirebaseUser user = mAuth.getCurrentUser();
        String userId = user.getUid();

        FirebaseStorage firebaseStorage = FirebaseStorage.getInstance();
        StorageReference storageRef = firebaseStorage.getReference();
        StorageReference uploadeRef = storageRef.child(cloudFilePath);

        uploadeRef.child(userId).putFile(picUri).addOnFailureListener(new OnFailureListener() {
            public void onFailure(@NonNull Exception exception) {
                Log.e(TAG, "Vos photos n'ont pas été tranférées sur les serveurs. Veuillez réessayer !");
            }
        }).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
            @Override
            public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
                Toast.makeText(DescriptionLogement.this,
                        "Vos photos ont été déposées avec succès !",
                        Toast.LENGTH_SHORT).show();
            }
        });
}

REQUEST_PICTURE_CAPTURE等于6。

static final int REQUEST_PICTURE_CAPTURE = 6;

0 个答案:

没有答案