项目心得(2)

这篇文章主要讲网络。

项目心得(2)_第1张图片

首先,网络用的是AFNetworking,根据单例里面封装一个静态方法来调用网络请求,通过枚举AppUrl 调用不同的的接口,请求的数据通过Block 把数据回调的当前使用的类。

其次 ,就是当用户点击返回 按钮和侧滑按钮的时候,需要告诉服务器,取消网络请求来减轻服务器的压力。


重写UIViewController 的的一个方法-(BOOL)navigationShouldPopOnBackButton;

在这里坐的操作是 隐藏loading 和取消当前网络请求。


项目心得(2)_第2张图片

在代理方法 - (BOOL)navigationBar:(UINavigationBar*)navigationBar shouldPopItem:(UINavigationItem*)item;

里面进行判断 如果当前的[self.viewControllerscount] < [navigationBar.itemscount]  获取侧滑事件  self.interactivePopGestureRecognizer.state==UIGestureRecognizerStateBegan

来取消网络 

项目心得(2)_第3张图片

这个样 无论是点击返回按钮 还是侧滑都可以取消不需要的网络请求了。

你可能感兴趣的:(项目心得(2))