objective-c纯代码搭建抽屉项目(SWRevealViewController)

来源:互联网 发布:广元广电网络影视频道 编辑:程序博客网 时间:2024/04/28 18:39

最近因项目需要,自己写了一个采用MVC模式的oc纯代码的抽屉模板,so总结分享一下。如果哪里有错误或者不正规的敌方还请各位大神指正。废话不多说,开始上干货。

1、新建项目准备工作

首先:删除launchScreen.storyboard 和Main.storyboard,并作相应的配置。

(1)在ASsets.xcassets下创建LaunchImage并设置对应的启动图

2)进行一些必要的设置:

注意:如果没有选择launchImage或者在launchImage中缺少retian4的启动图,屏幕就会出现上下黑边。

(3)创建并配置pch文件:

创建:

配置

其次:使用pod导入SWRevealViewController库、AFNetWorking库和MBProgressHD库

最后:搭建项目,项目的目录结构如下:

以上结构是本人习惯用的程序结构图,可以根据个人爱好来进行自行组织。这里只作一个推荐。

2、具体实现:

     初始化抽屉:

NKNavigation设置导航栏的统一样式:

网网络类代码实现:

.h文件

.m..m具体实现

其余具体请求就不详细列举了。

基类的实现:继承NKNetWorkController类,实现抽屉效果

.h文件


.m文件



基础类之间的继承关系:

NKBaseController继承NKNetWorkController,使其具有网络请求的功能;

其他业务逻辑类继承NKBaseController,业务逻辑类就有了抽屉滑动效果和网络请求功能,并具有统一的样式。


3、细节调整

(1)创建UINavigationController的类别UINavigationController+NK,实现下面的方法

2)在NKBaseController中根据actionType来决定当前frontController是否支持panGesture,遵守SWRevealViewControllerDelegate协议

4、demo效果图:



源代码地址:https://github.com/NickerZhang/NKSWRevealViewControllerTemplate



0 0