【问题标题】:Android - Zooming on only Position (0,0) instead whole imageAndroid - 仅缩放位置(0,0)而不是整个图像
【发布时间】:2020-12-06 19:37:33
【问题描述】:

我目前正在做一个项目,我在 Image 中添加了一个 Image 类作为视图,现在我正在尝试使用以下比例示例放大 Image 类:https://developer.android.com/training/gestures/scale

我已经使用了那个例子并且没有做任何更改。

但是,缩放仅适用于Position (0,0),我无法缩放到图像的其他部分。无论我从哪里做手势,它只会放大到Position (0,0)

如果有人建议我进行一些更改以使这项工作正常进行。那将不胜感激。

【问题讨论】:

    标签: java android intellij-idea imageview


    【解决方案1】:

    为了放大/缩小到不同的点,您必须指定枢轴点坐标。

    根据培训文档中的示例,您正在使用canvas.scale(x,y) 方法。但正如您从Canvas class documentation 中看到的那样,该方法的重载也采用了枢轴坐标。
    例如,要缩放到中间,您可以使用:

    canvas.scale(x,y,width/2,height/2)
    

    【讨论】:

    • 这可行,但它会在中间放大。有没有办法放大手势开始的位置?
    • 就像我说的,它会放大到您设置的任何枢轴。只需保存手势中的坐标并在此处使用它们
    猜你喜欢
    • 2015-09-27
    • 1970-01-01
    • 2014-12-26
    • 2016-10-27
    • 2012-07-29
    • 1970-01-01
    • 2012-10-18
    • 2012-09-25
    • 1970-01-01
    相关资源
    最近更新 更多