# Androidjz **Repository Path**: opopi/androidjz ## Basic Information - **Project Name**: Androidjz - **Description**: 安卓记账本 - **Primary Language**: Android - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-02-18 - **Last Updated**: 2025-02-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 摘 要 本系统应用数据库了,设计完成了记账系统,可以实现用户登录,管理员查看用户信息,用户个人账单,显示各月支出,收入以及总收支情况,添加,查询,修改,删除等功能。 **关键词**: SQL数据库,用户登录,管理员查看,用户个人账单,显示各月账单,账目添加,账目查询,账目修改,账目删除。 目 录 [摘 要... 2](#_Toc155548405) [第一章 绪论... 4](#_Toc155548406) [1.1 选题的目的及意义... 4](#_Toc155548407) [1.2 本系统主要功能... 4](#_Toc155548408) [第二章 系统分析... 5](#_Toc155548409) [2.1 登录模块... 5](#_Toc155548410) [2.2显示账单模块... 5](#_Toc155548411) [2.3添加和编辑以及删除模块... 5](#_Toc155548412) [2.4我的模块... 5](#_Toc155548413) [2.5管理员模块... 5](#_Toc155548414) [第三章 系统设计... 6](#_Toc155548415) [3.1系统整体结构... 6](#_Toc155548416) [第四章 系统详细设计... 7](#_Toc155548417) [4.1 登陆功能... 7](#_Toc155548418) [4.2注册功能... 8](#_Toc155548419) [4.3管理员功能... 9](#_Toc155548420) [4.4显示账单功能... 10](#_Toc155548421) [4.5添加,编辑,删除功能... 11](#_Toc155548422) [4.6用户信息显示和退出登录功能... 12](#_Toc155548423) [总结... 13](#_Toc155548424) [参考文献... 14](#_Toc155548425) # 第一章 绪论 1.1 选题的目的及意义 当今电子支付盛行,人们很少在拿着现金出门。支付时的随手一扫,更像是随手发了条信息一样,没有显示的反馈,让你感觉这数据交换的背后和你没有关系。导致很多人到最后一看钱包空空如也,甚至不知道把钱花费在哪里了,大呼“钱都去哪了!”。所以我选择写一个记账软件,每天随手记录自己的开销和收入情况,让你自己下次可以更淡定,更从容的打开你的电子钱包。至少自己能做到心中有数,而不是事后再惊呼“钱都去哪了!”。 1.2 本系统主要功能 本系统所编写程序制作了两种用户的权限方式,一管理员权限,该用户可以查看所有其他非管理员的用户信息(账户与密码);二普通用户权限,该用户就是可以进入到该软件的主页,完成记账,查看个人账单,显示各月支出,收入以及总收支情况,添加,查询,修改,删除,退出登录等功能。 # 第二章 系统分析 2.1 登录模块 输入用户名和密码,实现用户的登入和退出功能。初始无账号可以点击注册,自行注册一个新用户。如果用户忘记密码,可以点击忘记密码,这时会提示出“请联系管理员”的提示信息,管理员账户只有一个(初始账号:yangjianlei,密码:123456)。 2.2显示账单模块 显示用户的对应月份账单,可以选择收入或支出类目以及选择时间,根据用户选择显示对应的账单列表和账单对应的总数额。 2.3添加和编辑以及删除模块 用于用户添加账单,以及如果是从显示页面点击账单列表对应项,那么可以编辑,删除对应账单的功能。 2.4我的模块 用于显示当前显示模块所对应的用户名,和退出登录功能; 2.5管理员模块 登录管理员账号,显示用户信息列表(账户与密码) # 第三章 系统设计 3.1系统整体结构 系统整体功能结构图如图所示: ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image005.png) 3.2数据存储设计 创建一个了SQL数据库,包括两个表,一个用户信息表,一个用户账目表。一个用于注册和登录判断,一个负责存储用户账单。 # 第四章 系统详细设计 4.1 登陆功能 ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image007.png) 用户输入账号和密码实现登录,并且在此界面实现获取系统权限的功能。关键代码如下: ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image009.png) 4.2注册功能 ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image011.png) 注册新用户,关键代码如下: ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image013.png) ** ** 4.3管理员功能 ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image015.png) 显示所有用户信息实现,关键代码如下: ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image017.png) 4.4显示账单功能 ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image019.png) 显示登录用户的账目信息,关键代码如下: ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image021.png) 4.5添加,编辑,删除功能 ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image023.png)![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image025.png) 实现添加用户账目,以及编辑和删除对应用户账目,关键代码如下: ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image027.png) 4.6用户信息显示和退出登录功能 ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image029.png) 实现显示当前账单用户信息和退出登录,关键代码如下: ![img](file:///C:/Users/xxx/AppData/Local/Temp/msohtmlclip1/01/clip_image031.png) # 总结 这次的课程设计,我主要采用了数据库,SharedPreferences,对话框,listView,fragment等等。通过这次课程设计,首先,数据库的使用让我能够将数据持久化保存,并实现数据的增删改查操作。通过创建表格和定义字段,我能够轻松地存储和管理数据。这在我的应用中非常重要,因为用户可以保存和管理他们的个人信息或其他重要数据。 其次,SharedPreferences的使用使得我能够方便地存储一些简单的键值对数据。这对于保存一些配置信息或用户偏好非常有用。通过SharedPreferences,我能够在应用关闭后仍然保留用户的设置,提高了用户体验。 对话框是另一个我广泛使用的技术。通过对话框,我可以与用户进行交互,接收输入或显示提示信息。例如,当用户需要确认某个操作时,我可以显示一个确认对话框,让用户选择是否继续。这提高了用户对应用的掌控感。 ListView是一个非常有用的控件,它允许我以列表形式展示数据。通过适配器,我可以将数据与列表项绑定在一起,并实现自定义样式和操作。这给用户提供了一个清晰、易于浏览的界面,方便他们查看和操作数据。 最后,Fragment的使用使得我的应用更加模块化和灵活。通过将界面划分为多个片段,我能够独立地管理每个片段的生命周期和交互逻辑。这样,我可以更好地组织和管理代码,提高了应用的可维护性和可扩展性。 总而言之,通过本次课程设计,我充分应用了数据库、SharedPreferences、对话框、ListView和Fragment等技术,使得我的应用功能更加强大、用户友好。我对于这些技术的学习和运用有了更深入的了解,并且在日后的开发中会更加游刃有余。 ``` ``` # 参考文献 (1)Android 移动开发基础 案例教程 第二版 (2)CSDN论坛