#iphone #objective-c #ios4
#iPhone #objective-c #ios4
Вопрос:
В настоящее время я создаю элемент управления типом набора в своем приложении для iPad, который в настоящее время позволяет пользователям поворачивать его и перемещать точку в нужное положение.
Эта часть работает отлично.
https://skitch.com/aaronwardle/r76m1/dial
Вокруг циферблата у меня есть несколько меток для размещения цифр, например, пользователь должен повернуть его в положение 12, 3, 6 или 9.
Теперь я немного зациклен на том, как я могу определить, в какое положение они повернулись, а также что мне делать, если они не полностью поворачиваются на нужное число.
https://skitch.com/aaronwardle/r76m4/dialpartway
Любые предложения приветствуются.
Спасибо, Аарон
Ответ №1:
Предположительно, вы делаете что-то вроде отслеживания положения точки касания, чтобы обновить степень поворота циферблата. Итак, у вас есть угол поворота, соответствующий положению точки на циферблате. Если вы также определите углы на окружности, которые соответствуют позициям метки, то вы можете сопоставить текущее вращение с выбранным элементом, когда углы поворота совпадают.
Когда пользователь останавливает набор между двумя вариантами, вы можете переключить его на ближайший. Просто проверьте угол в точке, которую отпускает палец, определите ближайшую метку к этой точке и анимируйте циферблат в соответствии с этим поворотом.
Комментарии:
1. Спасибо за ответ, я попробую, похоже, это хороший способ сделать это.