基于java+MPAndroidChart开发的小账本app

2024-03-23 14:59

本文主要是介绍基于java+MPAndroidChart开发的小账本app,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1.小账本app展示
  • 2.app使用演示
  • 3.小账本app介绍
  • 4.系统部分代码
  • 5.自定义为你的app(修改为自己的)
  • 6.app代码下载地址
  • 7.总结

1.小账本app展示

  1. 首页面
    首页面是一个弹窗式的登录页面
    在这里插入图片描述
  2. 用户登录后数据库中查询用户数据,并显示当前用户的账单列表。
    在这里插入图片描述
  3. 对当前的用户的账单进行统计展示
    在这里插入图片描述

2.app使用演示

  1. app使用演示。如果有些页面背景看起来可能不是你想要的感觉,你可以很方便地在代码中修改成你想要的背景下面会有修改演示
    在这里插入图片描述

3.小账本app介绍

  1. 该项目系统包括登录/注册/登出功能管理账单功能,账单统计且包括图表展示功能。
  2. app包含SQLite数据库的使用,可以满足对用户数据的分离。
  3. 页面背景可以自定义为你想要的背景。
  4. 系统文件结构:
    在这里插入图片描述

4.系统部分代码

1.弹窗式登录页面-LoginFragment.java

public class LoginFragment extends DialogFragment implements View.OnClickListener {private UserDao userDao = null;private EditText usernameEditText;private EditText passwdEditText;@NonNullpublic Dialog onCreateDialog(Bundle savedInstanceState) {AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());LayoutInflater inflater = getActivity().getLayoutInflater();View view = inflater.inflate(R.layout.fragment_login, null);//获取弹窗上的组件usernameEditText = (EditText) view.findViewById(R.id.username);passwdEditText = (EditText) view.findViewById(R.id.passwd);Button login_btn = view.findViewById(R.id.login_btn);TextView registerButton = view.findViewById(R.id.login_register);
//        System.out.println("test");//给 登录 添加点击事件login_btn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {String username = usernameEditText.getText().toString();String passwd = passwdEditText.getText().toString();//获取数据库链接DBHelper dbHelper = new DBHelper(getActivity());SQLiteDatabase writableDatabase = dbHelper.getWritableDatabase();//用dao保存数据UserDao userDao = new UserDao(writableDatabase);//查询是否存在输入的用户名以及对应的密码的记录Cursor cursor = writableDatabase.query("users", new String[]{"_id","username", "passwd","age"},"username=? and passwd=?", new String[]{username, passwd},null, null, null);if (cursor.moveToFirst()) { //说明用户名和密码正确
//                    Intent intent = new Intent(getActivity(), MainActivity.class);  //错误
//                    startActivity(intent);cursor.close();dismiss();//结束当前弹窗//设置登录成功标志Data.setIsLogin(true);//设置当前用户的idSystem.out.println(userDao.getUserIdByUserName(username));Data.setUserId(userDao.getUserIdByUserName(username));Intent intent = new Intent(getActivity(), MainActivity.class);Toast.makeText(getActivity(),"登录成功!", Toast.LENGTH_LONG).show();startActivity(intent);} else {//将用户名密码框内的内容设置为空passwdEditText.setText("");usernameEditText.setText("");Data.setIsLogin(false);Toast.makeText(getActivity(),"用户名或密码错误,请重新输入", Toast.LENGTH_LONG).show();}
//                System.out.println("点击了登录事件");}});
//        System.out.println("test11111111111111111111");registerButton.setOnClickListener(this);builder.setView(view);return builder.create();}@Overridepublic void onClick(View view) {
//        System.out.println(view.getId() == R.id.login_register);//判断点击的是哪个组件,从而进行不同的操作switch (view.getId()) {case R.id.login_register:
//               System.out.println("test2222222222222222222222222");//跳转到注册页面Intent intent = new Intent(getActivity(), RegisterActivity.class);startActivity(intent);break;}}
}

5.自定义为你的app(修改为自己的)

  1. 项目中具有详细的代码注释,可以根据所需替换其中的图片或者文字即可。
    例如:修改账单的类型(自定义为你想要的类型)
    在这里插入图片描述
    再修改一下统计页面(StatisticActivity.java)中的名字即可。

注意:如果你不会修改为你自定义的账单类型或其他,你随时可以和我私信,我们可以随时交流。

6.app代码下载地址

下载需要一点点钱(连一瓶水钱都不要,请不要在学习上花钱 吝啬你值得为你的学习或课设投资
点次下载

7.总结

小账本app可以作为你的android课程实验设计(可二次开发),或者android开发课程的实验,绝对让你的老师满意。你可以从中学到如何使用弹窗式的登录以及使用SQLite数据库进行校验用户信息,并查询数据库中用户账单信息进行展示。并且使用了MPAndroidChart模块统计的数据进行可视化展示

这篇关于基于java+MPAndroidChart开发的小账本app的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/838675

相关文章

Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)

《Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)》:本文主要介绍Java导入、导出excel的相关资料,讲解了使用Java和ApachePOI库将数据导出为Excel文件,包括... 目录前言一、引入Apache POI依赖二、用法&步骤2.1 创建Excel的元素2.3 样式和字体2.

Java实现将Markdown转换为纯文本

《Java实现将Markdown转换为纯文本》这篇文章主要为大家详细介绍了两种在Java中实现Markdown转纯文本的主流方法,文中的示例代码讲解详细,大家可以根据需求选择适合的方案... 目录方法一:使用正则表达式(轻量级方案)方法二:使用 Flexmark-Java 库(专业方案)1. 添加依赖(Ma

Spring Boot拦截器Interceptor与过滤器Filter详细教程(示例详解)

《SpringBoot拦截器Interceptor与过滤器Filter详细教程(示例详解)》本文详细介绍了SpringBoot中的拦截器(Interceptor)和过滤器(Filter),包括它们的... 目录Spring Boot拦截器(Interceptor)与过滤器(Filter)详细教程1. 概述1

SpringBoot利用dynamic-datasource-spring-boot-starter解决多数据源问题

《SpringBoot利用dynamic-datasource-spring-boot-starter解决多数据源问题》dynamic-datasource-spring-boot-starter是一... 目录概要整体架构构想操作步骤创建数据源切换数据源后续问题小结概要自己闲暇时间想实现一个多租户平台,

Java反转字符串的五种方法总结

《Java反转字符串的五种方法总结》:本文主要介绍五种在Java中反转字符串的方法,包括使用StringBuilder的reverse()方法、字符数组、自定义StringBuilder方法、直接... 目录前言方法一:使用StringBuilder的reverse()方法方法二:使用字符数组方法三:使用自

JAVA封装多线程实现的方式及原理

《JAVA封装多线程实现的方式及原理》:本文主要介绍Java中封装多线程的原理和常见方式,通过封装可以简化多线程的使用,提高安全性,并增强代码的可维护性和可扩展性,需要的朋友可以参考下... 目录前言一、封装的目标二、常见的封装方式及原理总结前言在 Java 中,封装多线程的原理主要围绕着将多线程相关的操

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Spring Cloud之注册中心Nacos的使用详解

《SpringCloud之注册中心Nacos的使用详解》本文介绍SpringCloudAlibaba中的Nacos组件,对比了Nacos与Eureka的区别,展示了如何在项目中引入SpringClo... 目录Naacos服务注册/服务发现引⼊Spring Cloud Alibaba依赖引入Naco编程s依

java导出pdf文件的详细实现方法

《java导出pdf文件的详细实现方法》:本文主要介绍java导出pdf文件的详细实现方法,包括制作模板、获取中文字体文件、实现后端服务以及前端发起请求并生成下载链接,需要的朋友可以参考下... 目录使用注意点包含内容1、制作pdf模板2、获取pdf导出中文需要的文件3、实现4、前端发起请求并生成下载链接使

Java springBoot初步使用websocket的代码示例

《JavaspringBoot初步使用websocket的代码示例》:本文主要介绍JavaspringBoot初步使用websocket的相关资料,WebSocket是一种实现实时双向通信的协... 目录一、什么是websocket二、依赖坐标地址1.springBoot父级依赖2.springBoot依赖