这个项目接从开始到现在已经一年多了,用户量就不说了,和大家讨论一下项目的框架。
首先,最开始写这个项目的时候,只是一个版本,后来根据需求又有新的需求,需要一个平台的版本,之后的三个月就是两个版本代码改来改去的 ,最后通过把类Class 文件单独提出去,修改项目引用路径,把两个版本合到一个版本。到现在已经不知道有多少个版本的分支,目的达到了,维护一套代码,维护多个app 版本。(参考的coco2dx的项目结构)。
项目首页是RootViewController(继承UITabBarController) ,而控制几个tabbar 是通过本地的一个自定义json 文件数据生成的(json文件的读取速度比Xml快)
文件JSON 大体如下:
本项目里面用到的Model 是jsonModel; items 是一个数组 里面存tabar的ViewController; 根据每一个Model对应不同的key 通过聚合一个哈希表( NSDictionary) ,再通过NSClassFromString 这个方法生成ViewController;
到了这一步 ,就可根据不同的需求,来配置对应的Json 文件,可以达到不同模块之间组合。