0
我有一個ScaleGestureDetector的自定義視圖,在該視圖上我想使用捏來縮放操作。 當視圖非常大時,它可以正常工作,但是當它很小時,只有zomm能正常工作(我將兩個手指放在視圖上並將它們沿不同方向移動),當我嘗試縮小視圖時(將兩個手指放在視圖上並一起移動)沒有任何反應。屏幕截圖如下: 使用ScaleGestureDetector縮小視圖
問題出現在中心的小視圖中。 在頂部和底部的較大視圖zomm和縮小工作正常。
代碼:
private class MyScaleGestureListener implements OnScaleGestureListener
{
public boolean onScale(ScaleGestureDetector detector)
{
scaleFactor *= detector.getScaleFactor();
if (scaleFactor < 1)
scaleFactor = 1;
int newScrollX = (int)((getScrollX() + detector.getFocusX()) * detector.getScaleFactor() - detector.getFocusX());
int newScrollY = (int)((getScrollY() + detector.getFocusY()) * detector.getScaleFactor() - detector.getFocusY());
scrollTo(newScrollX, newScrollY);
invalidate();
return true;
}
public boolean onScaleBegin(ScaleGestureDetector detector)
{
return true;
}
public void onScaleEnd(ScaleGestureDetector detector)
{
}
}
如何使變焦失去工作的小看法?