不知到大家在开发时候是否遇到这样的产品需求:
手机首页左边导航按钮点击展示侧滑菜单列表,算是进入其它业务功能界面(登录+我的+系统设置....)的一种快捷交互方式,这样就不用点击底部功能按钮访问相应的功能界面。
那么话不多说,我们开始来详细描述侧滑菜单的实现过程:
1 引入第3方库CWLateralSlide到项目的Vender目录,并添加侧滑菜单需要资源文字和图片


2 在桥接文件MyCloudMusic-Bridging-Header.h引入侧滑库的头文件UIViewController+CWLateralSlide.h

3 BaseMainController添加侧滑菜单交互的测试函数
重写导航栏leftClick函数,添加跳转侧滑DrawVC代码,并增加打开侧滑和关闭侧滑菜单函数

重写initListener函数监听点击屏幕左侧响应侧滑菜单显示效果行为

4 创建侧滑DrawerController控制器
引入TangramKit布局库和DynamicColor颜色库

在BaseLogicControllerVC上添加scrollview容器
创建1个四边安全区的容器

在BaseLogicControllerVC上添加scrollview容器,为了让控件超出屏幕可以滑动显示

在DrawVC里面调用BaseLogicVC封装initScrollViewSafeArea

在contentContainer里面添加用户信息view组件---UserView
创建1个相对布局和在布局上添加头像 + 昵称 + 更多箭头 + 扫码按钮



实现vip功能效果黑胶唱片


封装通用侧滑菜单列表Item


我的消息view效果展示和代码实现


创建商城控件效果展示和代码实现


创建其他控件效果展示和代码实现



5 运行模拟器或手机测试验证效果

总结:
以上就是CWLateralSlide实现首页侧滑菜单功能实现过程
1 这个是原生App最早的iPad版本的交互行为。
2 属于模态对话框展示效果,强制用户在此刻必须操作一个行为,才能接着做其它的事情。
3 CWLateralSlide第三方库对UIVIewController的扩展的行为里面封装了VC的动画交互效果。
网友评论