这篇文章主要讲网络。
首先,网络用的是AFNetworking,根据单例里面封装一个静态方法来调用网络请求,通过枚举AppUrl 调用不同的的接口,请求的数据通过Block 把数据回调的当前使用的类。
其次 ,就是当用户点击返回 按钮和侧滑按钮的时候,需要告诉服务器,取消网络请求来减轻服务器的压力。
重写UIViewController 的的一个方法-(BOOL)navigationShouldPopOnBackButton;
在这里坐的操作是 隐藏loading 和取消当前网络请求。
在代理方法 - (BOOL)navigationBar:(UINavigationBar*)navigationBar shouldPopItem:(UINavigationItem*)item;
里面进行判断 如果当前的[self.viewControllerscount] < [navigationBar.itemscount] 获取侧滑事件 self.interactivePopGestureRecognizer.state==UIGestureRecognizerStateBegan
来取消网络
这个样 无论是点击返回按钮 还是侧滑都可以取消不需要的网络请求了。