前言
笔者在今年毕业的时候,为了应付学校的毕业设计,因此做了一款基于Realm数据库的记账软件。现在毕业后,稍微闲下来了,所以打算将整个项目的核心实现步骤记录下来,供大家学习学习。当然,项目中肯定还存在着大大小小的bug,例如数据的溢出等细节处理。那么先让大家看看项目的效果图吧~
效果图
时间线布局
记录界面
钱包界面
报表一
报表二
项目结构
项目大体分为四大模块,分别是
- 记录
- 是整个项目的核心模块,记账其实大体分为两部分,一部分是数据记录,另一部分就是生成报表,明细。因此,这一块将是重中之重。
- 时间线
- 这个时间线布局,是我模仿口袋记账的时间线布局,后续会说明的,这里就不再详细说明了。
- 钱包
- 这个界面是展示用户相关的钱包
- 报表
- 根据记录的数据,生成两个报表,一是饼状图,二是折线图。在这使用了一个框架charts
另外每一个模块都要对应的一个Manager进行数据操作,例如账单对应的BillManager。
使用到的框架
框架名 | 说明 |
---|---|
Realm | 不用写sql语句,即可完成增删查改,移动数据库的新皇者 |
Charts | 非常强大的图表库 |
Mansory | Auto布局库 |
SVProgressHUD | 提示框 |
FSCalendar | 日历选择器 |
UI风格
如果细心的朋友,可以发现,该项目的整体UI是跟口袋记账(某个版本)非常相似的。没错,我就是以口袋记账为模仿对象的,图标也是从中抠出来的~
总结
以上就是整个项目的基本结构,以及效果图。项目的关键点在于对Realm数据库的增删查改。接下来会按照记录,时间线,钱包,报表模块进行说明。等不及的小伙伴,可以直接上我的github看源码
github地址
https://github.com/maple1994/MPTally
请顺手给一个start哦,哈哈