2016-10-31 18 views
0

我已经成功地使用Picasso从纵向方向上将图片上传到firebase的图片上,但是当我尝试检索某些图片时,当他们改变方向时,也许当图像尺寸变大时。以下是示例图片。从Image中使用毕加索在纵向方向中检索Firebase中的图片

enter image description here

我用也Picasso而从Firebase检索图像,我该怎么能够进行自动检测时,图像不是肖像被设置肖像而不失去的图像质量就像Facebook的

下面是从图库中选择图像的代码。

imageSelect.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent galleryIntent = new Intent(Intent.ACTION_GET_CONTENT); 
       galleryIntent.setType("image/"); 
       startActivityForResult(galleryIntent, GALLERY_REQUEST); 
      } 
     }); 
@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(); 
      Picasso.with(c).load(imageUri).fit().into(imageSelect); 
      //imageSelect.setImageURI(imageUri); 
     } 
    } 

这是从火力地堡检索图像到RecyclerView

public void setImage(final Context c,final String imageUrl){ 

    // 

     Picasso.with(c).load(imageUrl).error(R.mipmap.add_btn).fit().centerInside().rotate(90).placeholder(R.mipmap.add_btn) 
       .networkPolicy(NetworkPolicy.OFFLINE).into(imagePost, new Callback() { 
      @Override 
      public void onSuccess() { 

      } 

      @Override 
      public void onError() { 

       //Reloading an image again ... 
       Picasso.with(c).load(imageUrl).error(R.mipmap.add_btn).placeholder(R.mipmap.add_btn) 
         .into(imagePost); 
      } 
     }); 

    } 

回答

1

的代码替换它

Picasso.with(c).load(imageUrl).error(R.mipmap.add_btn).fit().centerInside().rotate(90).placeholder(R.mipmap.add_btn) 

在此

Picasso.with(c).load(imageUrl).error(R.mipmap.add_btn).fit().centerInside().placeholder(R.mipmap.add_btn) 

这里太多rotate(90)

+0

你好@安卓感谢你的回复,但是当我删除'旋转(90)',这些图像来的很好,但其他人改变这是在肖像,现在这里的问题是当我从册页中选择一个图像到imageView以纵向显示方式显示,但是当我将其上传到Firebase并将其重新取回时,某些图像会改变其方向,其他图像会以纵向方式保留。是否有我的方式,我可以自动检查图像,可能会改变他们的方向与'毕加索'帮助 –

+0

Firebase图像在一个正常的方向? – Andro

+0

是的,但它似乎是当图像很大时,当方向改变时,如果我可能会问,有没有一种方法可以调整所有图像的大小而不会丢失质量,我认为这可能会解决问题 –

1

请尝试检查上载到Firebase之前更改图像的方向,然后再检索它。