Android Studio实现简单的记事本「建议收藏」

Android Studio实现简单的记事本「建议收藏」手把手教你搭建一个记事本项目,简单又好用,经典之作。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

一、需求分析

1、业务需求分析

在这里插入图片描述

2、架构分析

在这里插入图片描述

3、数据库类设计分析

在这里插入图片描述

4、界面需求分析

4.1、记事本界面

在这里插入图片描述

4.2、添加记录界面

在这里插入图片描述

4.3、修改记录界面

在这里插入图片描述

二、开发环境介绍

开发环境没有什么限制,只要是近两年从官网下载安装的Android Studio都可以顺利运行,模拟器版本选择API 22以上的即可,其他的都无关紧要。
在这里插入图片描述

三、记事本功能业务实现

1 、搭建聊天界面布局

在这里插入图片描述
关于修改清单文件可以参考 Android Studio如何去除默认标题栏

2 、搭建聊天条目布局

在这里插入图片描述

3 、封装记录信息实体类

在这里插入图片描述

4 、编写记事本列表适配器

在这里插入图片描述

//适配器中的getView()方法
public View getView(int position, View convertView, ViewGroup parent) { 
   
        ViewHolder viewHolder;
        if (convertView==null){ 
   
        	//加载Item界面对应的布局文件
            convertView=layoutInflater.inflate(R.layout.notepad_item_layout,null);
            viewHolder = new ViewHolder(convertView);//创建ViewHolder对象
            convertView.setTag(viewHolder);//convertView关联ViewHolder对象
        }else { 
   
            viewHolder=(ViewHolder) convertView.getTag();//convertView关联ViewHolder对象
        }
        //将获取的数据显示到对应的控件上
        NotepadBean noteInfo=(NotepadBean) getItem(position);
        viewHolder.tvNoteoadContent.setText(noteInfo.getNotepadContent());
        viewHolder.tvNotepadTime.setText(noteInfo.getNotepadTime());
        return convertView;
    }

Jetbrains全家桶1年46,售后保障稳定

5 、创建数据库

在这里插入图片描述

6、实现记事本界面的显示功能

在这里插入图片描述

7、搭建添加记录界面和修改记录界面的布局

在这里插入图片描述

8、实现添加记录界面的功能

在这里插入图片描述

9、实现修改记录界面的功能

在这里插入图片描述

10 、删除记事本中的记录

在这里插入图片描述

四、项目效果

1、打开模拟器,运行项目,启动界面是登录界面。

在这里插入图片描述

2、因为我们还没有注册,所以点+号进入注册界面,这里会有很炫酷的动画效果。

在这里插入图片描述

3、输入用户名、密码和确认密码进行注册,会进行判空提示和长度提示,如果两次密码不正确也会提示。正确输入后,我们点击Next按钮。

在这里插入图片描述

4、输入好用户名和密码后,我们点击Go进入主界面。

在这里插入图片描述

5、主界面显示记事本的事件列表,在主界面底部有个加号按钮,点击然后进入添加记录界面。

在这里插入图片描述

6、输入自己想记录的内容,然后点击右下角的保存按钮即可保存成功,如果点击左上角返回则不保存,也可以点左下角删除按钮清空编辑框。

在这里插入图片描述

6、可以看到“保存成功”的提示信息,然后列表多了一项记录,包含具体的日期时间。

在这里插入图片描述

7、我们再添加几条,可以看到记录之间是有灰色分隔线的,还有间距。

在这里插入图片描述

8、长按某条记录,会弹出对话框,提示是否删除该条记录。

在这里插入图片描述

9、点击确定按钮,即可删除成功。

在这里插入图片描述

10、还可以点击任一记录,进入修改界面,可以对内容进行修改。

在这里插入图片描述

11、还可以下拉刷新,有动画显示。

在这里插入图片描述

12、还可以查看我们的数据库文件。找到右侧【Device File Explorer】,data/data/包名/databases/Notepad就是数据库文件。保存到本地,拿Sqlite软件打开即可。

在这里插入图片描述

SQlite通过文件来保存数据库,一个文件就是一个数据库,
数据库中又包含多个表格,表格里又有多条记录,
每个记录由多个字段构成,每个字段有对应的值,
每个值我们可以指定类型,也可以不指定类型(主键除外)

五、项目总结

本次博客主要讲解了如何实现记事本应用,在实现本项目的过程中,熟悉了ListView的使用、数据库的相关操作、Activity的跳转以及数据回传。这些知识点在Android项目中会经常使用,因此希望大家能够熟练掌握上述知识点的使用,方便后续开发项目。

六、源码下载

☀️ 需要源码学习的同学,可以关注公众号 《萌新加油站》,后台回复:记事本,即可获取源码。☀️还有很多Android项目等你来学习!


?这有你错过的精彩内容

也可以直接下载源代码:?Android Studio实现简单的记事本,高分课设?

幸福的人生,需要三种姿态:对过去,要淡;对现在,要惜;对未来,要信。人生的答卷没有橡皮擦,写上去就无法再更改,过去的就让它过去,否则就是跟自己过不去。真正属于你的,只有活生生的现在,只有握得住当下,才有可能掌控自己的命运。只有相信未来,相信自己,今天的你才能成就明天的你。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223004.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Idea激活码永久有效Idea2020.2.1激活码教程-持续更新,一步到位

    Idea激活码永久有效Idea2020.2.1激活码教程-持续更新,一步到位Idea激活码永久有效2020.2.1激活码教程-Windows版永久激活-持续更新,Idea激活码2020.2.1成功激活

    2022年6月17日
    265
  • 日语自动词和他动词是什么意思_日语自动词他动词总结

    日语自动词和他动词是什么意思_日语自动词他动词总结http://coffeejp.com/bbs/thread-182243-1-1.html自动词:强调自发的行为他动词:强调他人驱使的行为拿到两个动词后按照它们的构词形式可以进行区分,基本可以分为4种方法(1)两个动词都以「る」结尾时:看「る」前的那个假名(汉字除外),如果是「あ」段假名,一般是自动词;如果是「え」段假名,一般是他动词(2)两个动词一个以「る」结尾,另一个不是以「る」结尾…

    2025年7月3日
    2
  • python %s%d(古代汉语中字的用法)

    %s格式化字符串print(‘str1%s’%’str2’)>>str1str2#意思是%作为一个替代,将后面的‘str2’字符串加到str1后面案例示范具体用法string="hello"#%s打印时结果是helloprint"string=%s"%string#output:string=hello#…

    2022年4月10日
    38
  • Linux下C语言 system函数返回值「建议收藏」

    Linux下C语言 system函数返回值「建议收藏」例:status=system("./test.sh");1、先统一两个说法:(1)system返回值:指调用system函数后的返回值,比如上例中status为system返回值(2)shell返回值:指system所调用的shell命令的返回值,比如上例中,test.sh中返回的值为shell返回值。2、如何正确判断test.sh是否正确执行?仅判断status是否==…

    2025年12月15日
    3
  • SpringBoot的认识,SpringBoot与Spring关系[通俗易懂]

    SpringBoot的认识,SpringBoot与Spring关系[通俗易懂]一、概念1、SpringSpring是一个开源容器框架,可以接管web层,业务层,dao层,持久层的组件,并且可以配置各种bean,和维护bean与bean之间的关系。其核心就是控制反转(IOC),和面向切面(AOP),简单的说就是一个分层的轻量级开源框架。2、SpringMVCSpringMVC属于SpringFrameWork的后续产品,已经融合在SpringWebFlow里面。SpringMVC是一种web层mvc框架,用于替代servlet(处理|响应请求,获取表单参数,表单校验等。S

    2022年5月27日
    35
  • 使用PHP password_hash()加密,再也不怕被拖库了

    使用PHP password_hash()加密,再也不怕被拖库了

    2022年2月12日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号