【问题标题】:Android PhotoView setDisplayMatrixAndroid PhotoView setDisplayMatrix
【发布时间】:2016-02-02 10:35:48
【问题描述】:

我正在使用https://github.com/chrisbanes/PhotoView 并尝试使用setDisplayMatrix 方法对其进行顶部裁剪。

基于问题:https://github.com/chrisbanes/PhotoView/issues/185

它应该可以工作,但我没有让它工作。我的 ImageView 在 xml 中定义了 android:scaleType="center"

什么时候应该调用setDisplayMatrix 以使其正常工作?

谢谢。

【问题讨论】:

    标签: android


    【解决方案1】:

    扩展默认 PhotoView 并覆盖 setImageDrawable 对我有用。

    @Override
    public void setImageDrawable(Drawable drawable) {
        super.setImageDrawable(drawable);
    
        Matrix m = getDisplayMatrix();
        float[] values = new float[9];
        m.getValues(values);
    
        if (values[5] < 0.0f) {
            m.postTranslate(0, -2 * values[5]);
            setDisplayMatrix(m);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2014-02-02
      • 2015-04-08
      • 1970-01-01
      • 1970-01-01
      • 2014-05-18
      • 1970-01-01
      • 1970-01-01
      • 2013-08-25
      • 1970-01-01
      相关资源
      最近更新 更多