确定位置需要一些时间。位置管理员何时何地开始工作?何时/何处startUpdatingLocation?
现在我开始位置更新之前结果视图(需要位置)加载一个视图。如果用户点击得快,我会得到0.0个坐标。
为了获得正确的时机,startUpdatingLocation
应在结果视图之前调用三个视图。这里的问题是我必须通过这三个视图控制器的价值。
接下来的事情是我需要的位置也在另一个视图(而不是上面提到的意见)。我想我会创建一个自己的位置监听器类。但是什么时候这个类被实例化并且坐标(经度,纬度)通过?一个协议不能帮助我,因为只有创建我的位置监听器的类才会返回结果。
我读了一下,拿出了以下可能的解决方案:
1)的通知中心的使用(见this solution)
2)AppDelegate
在1)我会有问题,需要结果的视图不会被创建之前。
2)的实现将如何?我在应用程序委托中创建位置管理器的实例,然后访问一些ivars,如AppDelegate
的纬度/经度?如果我将采取描述here的解决方案,我将不得不每次都实施CLLocationManagerDelegate
。有一堂课做这个不是更好吗?
也许你有第三个解决方案?
该位置在app的开头(AppDelegate')中确定。我创建了一个实例化CLLocationManager的单例。现在只能创建一个位置管理器实例,并且位置数据始终可用。什么时候?在应用程序的开始。哪里?在'AppDelegate'中。 – testing 2010-10-12 11:18:01
AppDelegate也是一个单例类,我个人喜欢创建一个我自己的单例类来存储应用程序数据。我很高兴能够提供帮助。 – Jeroen 2010-10-13 13:17:33
什么是DataController在这里? – Mann 2011-09-14 22:12:22