Как я могу отобразить карту по желанию? - PullRequest
0 голосов
/ 02 ноября 2011

Я позаимствовал код Whereami из книги iOS The Big Nerd Ranch и использовал его в приложении, которое я пишу. Мое приложение определяет местоположение пользователя и отображает его на карте в делегате приложения, так же как приложение Whereami в книге. UIWindow отображается и правильно отображает карту. С этого момента код мой.

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

В какой-то момент контроллер представления содержит кнопку с надписью «MAP», которая при нажатии должна отображать карту, показывающую текущее местоположение пользователя.

Как я могу заставить приложение отображать UIWindow, которое есть в AppDelegate.m? Я предполагаю, что делегат приложения продолжает определять местоположение пользователя, и я хочу, чтобы у пользователя была возможность отображать карту по желанию.

Мой текущий код выделяет MapViewController, когда нажимается кнопка «MAP», но я не могу понять, как получить UIWindow, который находится в AppDelegate.m для отображения.

Я думаю, что смогу сделать это, указав на UIWindow в MapViewController. Это правильный подход? Нужно ли что-нибудь еще? Я использую Xcode 4.0.2, Snow Leopard и тестирую на устройстве iOS 4. Я новичок в этом, и я не хочу смущаться, переходя на Lion, более высокий Xcode или iOS 5.

1 Ответ

0 голосов
/ 02 ноября 2011

Рассмотрите возможность использования presentModalViewController:animated: (это метод для всех экземпляров UIViewController и его подклассов). Вы можете использовать различные стили перехода, такие как флип или фейд.

На iOS вы очень редко работаете с UIWindow объектами. Вы в значительной степени настраиваете его при запуске приложения и оставляете его в покое. Все делается с UIView экземплярами или UIViewController экземплярами, которые управляют ими.

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