Управление типом набора iPhone Обнаружение текущего положения? - PullRequest
1 голос
/ 06 мая 2011

В настоящее время я создаю элемент управления типа Dial в своем приложении для iPad, которое в настоящее время позволяет пользователям поворачивать его и перемещать точку вокруг в нужное положение.

Эта часть прекрасно работает.

https://skitch.com/aaronwardle/r76m1/dial

Вокруг циферблата у меня есть некоторые номера меток, поэтому, например, пользователь должен повернуть его в положение 12, 3, 6 или 9.

Теперь я немного застрял в том, как определить, в какую позицию они повернулись, а также в том, что мне делать, если они не повернутся до нужного числа.

https://skitch.com/aaronwardle/r76m4/dialpartway

Любые предложения приветствуются.

Спасибо, Аарон

1 Ответ

1 голос
/ 06 мая 2011

Предположительно, вы делаете что-то вроде отслеживания положения точки касания, чтобы обновить степень вращения диска. Таким образом, у вас есть угол поворота, соответствующий положению точки на циферблате. Если вы также идентифицируете углы на окружности, которые соответствуют положениям метки, тогда вы можете сопоставить текущий поворот с выбранным элементом, если углы поворота совпадают.

Для случаев, когда пользователь останавливает набор между двумя вариантами, вы можете привязать его к ближайшему. Просто проверьте угол в точке, которую отпускает палец, найдите ближайшую метку к этой точке и анимируйте циферблат для этого поворота.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...