当我使用 PhotoViewAttacher 时,imgview 不在中心。 照片总是在顶部,但是当我触摸照片时,照片会移动到中心。请帮助我。
是的。 我也有同样的问题😟
左上角位置的图像:
中心图像:
在此处粘贴一些 XML 以显示布局的外观会有所帮助
@Jawnnypoo我正在以编程方式创建 ImageView 并将其添加到布局中。
你能粘贴你用来以编程方式添加视图的代码吗?
将 zoomable 设置为 false 解决了我的问题。
我已经解决了。 在 viewpager 中,当您使用 PhotoViewAttacher 显示图像时,图像始终不显示在中心,我不知道为什么。 但是,我发现正确的方法是在 viewpager 的适配器中使用 PhotoView。
在我的 PagerAdapter 的 InstantiateItem 中添加 PhotoViewAttacher 时,它也以同样的方式被破坏。 但是,使用 PhotoView 而不是示例中编写的 ImageView 修复了它。 它在 android 4.3 和 5.1.1 上以同样的方式被破坏。 如果图像太高,它会左对齐而不是上对齐。 这是一个从损坏到工作版本的提交,以防您需要它。 https://github.com/SimpleMobileTools/Simple-Gallery/commit/3983428d5fd4810e28fadd915a59ca08558ba4ae
@tibbi也遇到过这种情况,在你的帮助下解决了。 感谢分享代码!
当我将可缩放设置为假图像时,视图显示正常。 当我使用 PhotoView 时也是如此。 但是这些解决方案对我无效,因为我需要缩放和中心图像。
@E2Clince我终于找到了解决方案!! 参考这个网站!
http://stackoverflow.com/questions/33479400/android-photoview-setdisplaymatrix
@tibbi的方式对我
我解决了这个问题。 使用下一个方法。
mAttacher.setOnScaleChangeListener(new PhotoViewAttacher.OnScaleChangeListener() {
@覆盖
public void onScaleChange(float scaleFactor, float focusX, float focusY) {
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT);
params.addRule(RelativeLayout.CENTER_IN_PARENT);
mAttacher.getImageView().setLayoutParams(params);
}
});
你真棒谢谢
@AnswerZhao我也面临同样的问题,请告诉我如何解决它..
谢谢
最有用的评论
在我的 PagerAdapter 的 InstantiateItem 中添加 PhotoViewAttacher 时,它也以同样的方式被破坏。 但是,使用 PhotoView 而不是示例中编写的 ImageView 修复了它。 它在 android 4.3 和 5.1.1 上以同样的方式被破坏。 如果图像太高,它会左对齐而不是上对齐。 这是一个从损坏到工作版本的提交,以防您需要它。 https://github.com/SimpleMobileTools/Simple-Gallery/commit/3983428d5fd4810e28fadd915a59ca08558ba4ae