我找到了放入我的Android应用程序的示例代码,以使图像可缩放和可拖动。我理解其中的大部分内容,但有一个if语句,我不太明白。
if (mode == DRAG)
{
matrix.set(savedMatrix);
if (view.getLeft() >= -392)
{
matrix.postTranslate(event.getX() - start.x, event.getY() - start.y);
}
}
else if (mode == ZOOM) {
float newDist = spacing(event);
if (newDist > 5f) {
matrix.set(savedMatrix);
scale = newDist/oldDist;
matrix.postScale(scale, scale, mid.x, mid.y);
}
}
if语句中-392的意义是什么?
答案 0 :(得分:5)
该代码的作者认为他不希望被拖得太远。所以他提出了一个硬编码限制。 392就是他选择的限制,可能是基于某些设备上的视图大小。
然而,这有两个方面是个坏主意:
dp
并在运行时进行缩放。