# 样例工具收集 **Repository Path**: jbxb/sample-tool-collection ## Basic Information - **Project Name**: 样例工具收集 - **Description**: 样例工具收集,用于收集开发中遇到的通用性代码 - **Primary Language**: Objective-C - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-07-11 - **Last Updated**: 2022-07-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: oc, Swift ## README # 分享 由iOS同事共同维护的工具、样例集,包含一些封装好的控件、常用的功能样例等。 1. 使用方法 * 每人单独维护一个以`MenuHandler`结尾的菜单构建类,主要功能是生成二级菜单。 * 菜单构建类需要遵守协议`MenuProtocol` * 构建二级菜单需使用方法`menuType:title:subtitle:vcClass:`,其中`menuType`是跟一级菜单关联的唯一途径,`title`是对该样例或者封装的名字,`subtitle`是对该样例的详细描述,`vcClass`是该样例对应的视图控制器。 2. 一级菜单的添加 一级菜单类需要更改类`Menu`的方法`setupWithData:`和`datas`的`get`方法,其他无需更改。 * `setupWithData:`的更改 在`switch`中更具`menuType`从`datas`中取出对应的对象,如:`menuData = self.datas[0];` * `datas`的`get`方法的更改 更改`datas`的初始化,新增条目,如:`[ClassifyData menuType:MenuTypeDraw title:@"绘图"]` 3. 注意事项 * 无论是一级菜单或二级菜单,都是使用类`ClassifyData`作为模型类,但使用的创建方法不一致。 * 菜单构建类必须以`MenuHandler`结尾,同时遵守协议`MenuProtocol`。 * 本样例暂时仅支持二级菜单,不支持更多级 ### 水纹动画 ![水纹](http://173.16.200.201:9999/xuejingbo/HDBaseMall/raw/master/Mall/Mall/Assets.xcassets/QQ20220704-163035.dataset/QQ20220704-163035.gif) ### 标签流 ![标签流](http://173.16.200.201:9999/xuejingbo/HDBaseMall/raw/master/Mall/Mall/Assets.xcassets/标签流.imageset/标签流.jpg) ### 复杂布局 ![复杂布局](http://173.16.200.201:9999/xuejingbo/HDBaseMall/raw/master/Mall/Mall/Assets.xcassets/复杂布局Collection方案.imageset/复杂布局Collection方案.png) ### 轮播图-数字控制器 ![轮播图-数字控制器](http://173.16.200.201:9999/xuejingbo/HDBaseMall/raw/master/Mall/Mall/Assets.xcassets/轮播图-数字控制器.imageset/轮播图-数字控制器.png)