постоянная кнопка iphone на всех экранах - PullRequest
1 голос
/ 22 июля 2010

У меня есть навигационное приложение, в котором есть много экранов, на которые пользователь переходит. Горстка представлений управляет этими экранами динамически. Я хочу добавить кнопку, которая всегда будет отображаться на каждом экране, который просматривает пользователь. Мне нужно сделать это так, чтобы пользователь всегда мог предварительно выполнить действие, связанное с кнопкой, независимо от того, где он находится в приложении.

Можно ли этого добиться, добавив эту кнопку только один раз и передав ее между представлениями, как моя панель навигации? Или мне просто нужно добавить эту кнопку и ее функциональность к каждому имеющемуся файлу просмотра?

Спасибо

Ответы [ 2 ]

1 голос
/ 22 июля 2010

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

Затем вы можете использовать rightBarButtonItem, чтобы всегда показывать одну и ту же кнопку и просто получать доступ к этому методу.Вам просто нужно добавить код для rightBarButtonItem в каждом viewDidLoad (но все они будут одинаковыми).

Я сделал нечто похожее на это с помощью кнопки «Обновить» в одном проекте.Поскольку все, что делает кнопка, - это запускает AppStore до платной версии, он не зависит от всех представлений, и я могу разместить его где угодно.

0 голосов
/ 22 июля 2010

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

...