我对 iOs 开发很陌生,我有点困惑我应该如何分离我的代码以避免巨大的 ViewController.m 文件。目前我的主要视图控制器有很多代表:
@interface ViewController : UIViewController <MKMapViewDelegate, HttpClientDelegate, CLLocationManagerDelegate, NSFetchedResultsControllerDelegate>
我想减少 viewController 代码,我想我应该创建单独的类来处理委托任务。问题是,如果我为 CLLocationManager 创建单例类并让它实现委托方法,那么我如何与视图控制器通信?
假设我的 CLLocationManager 收到位置更新,我如何告诉 viewController 对 UI 进行更改?我应该使用 NSNotificationCenter 发布通知,然后将观察者添加到视图控制器吗?还是让 viewController 像现在一样实现所有委托方法的最佳方法是什么?