SubsamplingScaleImageView方向问题

SubsamplingScaleImageView方向问题

神马笔记使用SubsamplingScaleImageView显示图片时,发现一个有趣的问题。

相同的一张图片。

文章模式显示正常。

对话模式下旋转了90度。

对比了2份代码,完全一样,但图片确实选择了90度。


调试代码时发现。

文章模式的URI是文件路径,file://

对话模式的URI是内容路径,content://


查看源码发现ORIENTATION_USE_EXIF只适用于外部文件的情况。

1
2
/** Attempt to use EXIF information on the image to rotate it. Works for external files only. */
public static final int ORIENTATION_USE_EXIF = -1;


使用Glide提供了DefaultImageHeaderParser可以实现从content://的URI路径获取图片的方向信息。

因为需要修改SubsamplingScaleImageView的代码,暂时改为file://的URI路径格式。