Как ограничить жест щипка в Silverlight WP7?

Я реализую жест щипка в своем приложении, используя GestureListener в silverlight. Проблема, с которой я сталкиваюсь, заключается в установлении ограничения на масштабирование, которое возникает, когда пользователь зажимает объект.

В XNA это довольно просто, потому что каждый раз, когда вызывается метод обновления, вы можете проверить масштаб объекта в его текущей точке и определить, следует ли увеличивать, уменьшать или ничего не делать с объектом.

В Silverlight я пытаюсь проверить ограничение, но мой код запускается только после завершения жеста. Таким образом, у пользователя все еще есть возможность масштабироваться за пределы установленного мной предела, а затем он снова возвращается к ограниченному масштабу после того, как он отпускает щепотку. Кто-нибудь знает, как наложить ограничение на масштабирование?


person Edward    schedule 01.11.2011    source источник


Ответы (1)


В жесте щипка участвуют три события:

  • PinchStarted
  • PinchDelta
  • PinchCompleted

Попробуйте обработать PinchDelta вместо PinchCompleted, чтобы получать обновления, пока пользователь выполняет жест. Тогда просто откажитесь от увеличения вашего объекта.

person Heinrich Ulbricht    schedule 01.11.2011