如何随意显示地图?

时间:2011-11-02 05:07:05

标签: objective-c ios cocoa-touch uiviewcontroller uinavigationcontroller

我借用了The Big Nerd Ranch iOS书中的Whereami代码,并在我正在编写的应用程序中使用它。我的应用程序确定用户的位置,并将其显示在应用程序委托中的地图中,就像书中的Whereami应用程序一样。 UIWindow可见并正确显示地图。从现在开始,代码就是我自己的代码。

我的应用分配UINavigationController,设置根视图控制器,并继续允许用户在导航到其后查看其他视图控制器并执行其他方法。

在某些时候,视图控制器包含一个标有“MAP”的按钮,按下该按钮时,应显示显示用户当前位置的地图。

如何让应用显示AppDelegate.m中的UIWindow?我假设应用代表正在继续确定用户的位置,我希望用户能够随意显示地图。

当按下“MAP”按钮时,我当前的代码会分配MapViewController,但我无法弄清楚如何显示AppDelegate.m中的UIWindow

我想我应该能够通过指向UIWindowMapViewController的指针来实现这一目标。这是正确的方法吗?我需要什么吗?我正在使用Xcode 4.0.2,Snow Leopard,并在iOS 4设备上进行测试。我是新手,我不想因升级到Lion,更高的Xcode或iOS 5而感到困惑。

1 个答案:

答案 0 :(得分:0)

考虑使用presentModalViewController:animated:(它是UIViewController及其子类的所有实例上的方法)。您可以使用各种过渡样式,如翻转或淡入淡出。

在iOS上,您非常很少使用UIWindow个对象。当您的应用程序启动时,您几乎可以设置一个并且不管它。一切都是使用UIView个实例或管理它们的UIViewController个实例完成的。