Как реализовать стрелку указателя на панели инструментов в iOS? - PullRequest
0 голосов
/ 17 февраля 2012

Я надеюсь реализовать стрелку указателя над выбранным в данный момент значком панели инструментов, очень похожую на схему, найденную в Reeder и Instacast:

Instacast toolbar

Стрелка указателя должна плавно перемещатьсякогда нажимается другой элемент панели инструментов.Мне нужно иметь возможность выбирать, какие элементы заставляют стрелку двигаться, как это показано в Instacast и Reeder, где только определенные элементы меняют положение стрелки.

Могу ли я сделать это без лишних накладных расходов и большого количества UIKitподклассы

1 Ответ

2 голосов
/ 17 февраля 2012

Это не должно быть слишком плохо: просто возьмите изображение маленького треугольника, как у вас в вопросе, и поместите его в UIImageView, который находится над панелью инструментов.

Затем настройте его так, чтобы при вызове action: для соответствующей кнопки панели инструментов, UIImageView скользило так, чтобы оно находилось в нужном месте с анимацией. Что-то вроде:

[UIView beginAnimations:@"TriangleAnimation" context:NULL];
[UIView setAnimationDuration:0.25];
triangleImageView.frame = //new location here
[UIView commitAnimations];
...