我的博客应用程序应该在图片下方上传图片及其说明。我正在使用毕加索裁剪工具裁剪图像。即使未点击确定按钮,图片也会上传
问题:我点击图片按钮上传图片,然后从图库中选择图片,选择并剪裁图片后,我改变主意并决定不上传图片,只需按下后退按钮。图像按钮中也没有显示任何内容。我只需输入描述并发布博客即可。当博客页面打开时,即使在按下后退按钮而没有将图像上载到图像按钮的情况下,也可以看到图像与描述一起上载,而我只想显示描述。这是为什么发生?我是否必须编写一些特殊的条件代码以避免此类错误? 任何帮助表示赞赏。谢谢
注意:它只发生在我调整图像大小并按下后退按钮而没有上传它。如果我没有做任何调整大小,并选择图像后单击后退按钮问题不会出现。
代码:
private ImageButton selectimage;
selectimage= (ImageButton) findViewById(R.id.imageSelect);
selectimage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent galleryIntent=new Intent(Intent.ACTION_GET_CONTENT);
galleryIntent.setType("image/*");
startActivityForResult(galleryIntent,GALLERY_REQUEST);
}
});
public void startposting(){
StorageReference filepath=mstorage.child("Place_Image").child(imageUri.getLastPathSegment());
filepath.putFile(imageUri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
@SuppressWarnings("VisibleForTests") Uri downloadUrl = taskSnapshot.getDownloadUrl();
DatabaseReference newPost = mDatabase.push();
newPost.child("description").setValue(desc);
newPost.child("image").setValue(downloadUrl.toString());
}});
@Override
protected void onActivityResult(int requestCode,int resultCode,Intent data){
super.onActivityResult(requestCode,resultCode,data);
if(requestCode==GALLERY_REQUEST && resultCode==RESULT_OK){
imageUri=data.getData();
CropImage.activity(imageUri)
.setGuidelines(CropImageView.Guidelines.ON).setAspectRatio(3,2)
.start(this);
}
if (requestCode == CropImage.CROP_IMAGE_ACTIVITY_REQUEST_CODE) {
CropImage.ActivityResult result = CropImage.getActivityResult(data);
if (resultCode == RESULT_OK) {
Uri resultUri = result.getUri();
imageUri=resultUri;
selectimage.setImageURI(resultUri);
} else if (resultCode == CropImage.CROP_IMAGE_ACTIVITY_RESULT_ERROR_CODE) {
Exception error = result.getError();
}
}
}
粘贴代码,以便其他有助于帮你解决这个问题 –