iOS开发——无网占位图的实现

2017-09-27  本文已影响142人  06f43b0b52f7

http://www.jianshu.com/p/d537393fe247

详细讲解:

首先按照设计师的UI图封装一个无网占位图view:CQNoNetworkView,在构造方法里完成

@end

/** 无网络时展示的view */
@interface CQNoNetworkView : UIView

@property (nonatomic,weak) id<CheckNetworkDelegate> delegate;

@end
确定代理方。代理方就是执行“重新加载数据”的对象。由于每个viewController都需要在无网时展示无网占位图,所以代理方可以设置为项目的BaseViewController(不要告诉我,你的项目里没有基类😅)
@interface BaseViewController ()<CheckNetworkDelegate>
在基类里实现重新加载数据,当然,需要由子类重写,不过如果你的项目架构的比较好,所有viewcontroller的获取数据的方法的方法名都一样,那么就不需要再由子类重写了:

/** 重新加载数据,由子类重写 */
(void)reloadData{

}
同样在基类里实现弹出无网占位图的方法:

/** 显示无网络view */

此功能主要是代理和基类的运用,合理使用基类能让你少些很多代码。当然有些APP可能不仅有一种网络占位图,这个时候在子类里重写基类里的showNoNetworkView方法即可。以上是我对此功能的一些个人看法,只是简单的实现了这个功能,具体项目中还是要根据项目需求进行必要修改和优化的。但是,思路基本上不变。欢迎各位看官提出意见或建议。

作者:无夜之星辰
链接:http://www.jianshu.com/p/d537393fe247
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

上一篇下一篇

猜你喜欢

热点阅读