我有一张图像,可以用捏手势移动和缩放。所有这些操作都在onTouch()内部完成。我想限制它并使它仅在用户长按图像后才可移动(和可缩放)。

最佳答案

注册LongCLickListener。如果识别出长按,请将标志设置为true。

在OnTouch方法中,仅当标志设置为true时才允许缩放和移动。移动和缩放后,将标志再次设置为false。

这是一些伪代码:

public class MyActivity extends Activity {

   private boolean longClick = false;

   public boolean onTouch(View v, MotionEvent event) {
      if (longClick) {
         // do scaling and moving ...
         longClick = false;
      }
      return false;
   }

   public boolean onLongClick(View v) {
      longClick = true;
      return false;
   }
}

关于Android:如何仅在onLongClick之后调用onTouch?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5471959/

10-10 19:43