1,项目介绍
这款应用是手机和传播高品质应用的新媒体的社区,由用户和设计师一起发现和分享最好玩,最好用的应用,这款应用会每天推荐一款,是发现号应用的不错途径,并提供多源的下载地址,接受用户评论,评分,测试。
2.项目效果截图
3.项目架构介绍
这个客户端使用MVC的整体架构,根据数据分类抽取出4个模块,每个模块也是使用MVC来进行构建,首先在创建整体框架的时候,根据项目的需求来剥离出每一个视图的基类,构建出整体的Base类库,包括想BaseModel,BaseViewController,BaseTableView等,在其中封装了大量的子类化控件。如:下拉刷新,上拉加载,加载视图,状态栏提示等功能,减少在编写大量重复代码的劳动量。
整体是使用Storyboard来创建,在子类化的时候有少量的xib创建。
4.项目技术点介绍
(1)整体的框架在一个自定义tabbar上展开,自定义tabbar上添加多个storyboard,实现视图的跳转
(2)网络请求使用第三方框架AFNetWorking,并封装出一个MyDataService工具类方便请求
(3)首页和发现页面实现翻页效果,分别使用了翻转的tableView和横向滑动的collectionView来实现效果
(4)使用通知来实现首页页面滑动整体背景颜色变化,日期变化,底部collectionView视图滑动
(5)详情页面使用tableView分组来实现页面布局,第一组进行图片的变形动画,第二组实现应用详情介绍,第三组展示评论列表
(6)在应用详情显示是使用了DTCoreText来进行布局,并对得到的Html连接进行修改实现图片文字的混排
(7)使用友盟SDK来实现分享功能
(8)在分享页面加入了添加图片截图和删除图片截图功能
(9)侧滑功能使用开源框架MMDrawerController来实现
(10)使用开源框架SDWebImage来实现网络图片的异步加载与缓存处理
(11)集成关键字搜索,应用下载并在状态栏显示进度
5.总结
此次项目是第一个独立编写的一个项目,在编写过程中遇见了很多自己平常并不注意的问题,磕磕绊绊但也收获颇多。
独立的编写使自己学过的知识又一次的得到了加深,也认识到自己需要学习的东西还有很多,像这个应用的难点就是DTCoreText的图文混排,在之前接触的次数很少,在使用的时候发现很困难,所以对于一个程序员来说要通过不断的学习来提升自己,季候的路还会很长。