七天从零基础学习android(3)--实现过程
首先这是我对自己编写程序的认识,要实现一个程序,根据之前编写C++的经验,要对所编写的软件有一个模糊的了解。
一个记账本软件,要实现的过程是,添加收支,显示本日,本月或本年的收支状态。然而基于是完全没有编程基础的小白,需要一个一个功能搜索之后学习实现,这是我一直以来学习编程的方式,把当前不会的项目分为一部分直到能够完成一整个项目。
想到的记账本的第一个功能实现是添加收支记录,为了实现这个功能,仿照很多软件的状态,都是点击右上角的菜单栏后,弹出一个菜单之后,按下添加收入记录,或者添加支出记录的菜单,同时考虑到以后可能会用到查询记录的功能,还可以在这个位置添加查询记录的菜单栏。
所以为了实现这个功能,首先百度搜索:安卓右上开发菜单
对弹出的记录进行筛选之后,找到这三篇相对对我们的开发有帮助的博文,https://www.cnblogs.com/lichenwei/p/3963358.html,https://www.cnblogs.com/superWolf/p/4646929.html,https://blog.csdn.net/crackgmkey/article/details/80094720对于菜单栏的用法有所提及。(在编写的过程中主要学习的是第3篇,前2篇是凭着感觉,觉得对之后的开发有帮助的两篇博文,在此先对其进行收藏)
对之前的helloworld程序进行相对应的修改,尝试能否弹出相应的菜单栏。

然而根据软件的外观,这样的软件很明显就不符合我们对于软件的审美,最上面那一个菜单栏显得很突兀,所以根据这篇博文,里面提供了删除最上面那层菜单栏的解决方案。
http://www.pianshen.com/article/2322135983/

根据博文的内容进行修改之后,明显好看了许多,接着,添加刚刚要添加的菜单栏按钮。
现在在右上角还尚未有一个可以选择的按钮,应该就是因为没有添加菜单栏里面的选项所示,返回到第三篇的博文里面对里面的内容进行提取,然后添加上相应的内容。

目前效果很完美。
https://blog.csdn.net/u010583599/article/details/51605572,然后根据这篇博客,我想估计可以使用点击此处添加收支记录的按钮。
添加子菜单,再对界面的布局进行一些简单的设置之后,效果如下

主要添加界面完成了之后,接下来应该实现收支记录的过程了。这是这个程序的核心部分
首先要添加类似历史记录的过程,每添加一个收支记录之后,在主菜单里面就增加一个选项。根据这篇文章,实现以下的界面https://www.jb51.net/article/80654.htm

添加了一个左上角显示的
将所有的菜单的选项的按钮的接口都设置好了之后,接着开始设置其中各个菜单的页面。
根据这篇博文里面说明的下拉选项框的实现,https://blog.csdn.net/qq_38217237/article/details/79044448
设计添加收支记录的页面,大体如下所示

接着根据这篇博文添加日期选择器,提取其中的操作步骤,并修改成想要的内容
https://www.cnblogs.com/mcxiaobing/p/5907327.html
之后添加之后的效果如下所示:

然后页面设计完成之后,接下来就开始实现记录功能了。首先写上确定按钮和取消按钮的接口
根据https://www.cnblogs.com/foxy/p/7725010.html这篇博文,学习sqlite的基本用法之后,实现了记录数据的功能

根据自定义布局的例子,然后可以对上面的样式进行更改,参考链接为:https://www.cnblogs.com/r-decade/p/5827841.html
修改布局之后的格式如下所示:

然后对其中一直显示暂无今日记录的文字进行修改,让其默认统计显示的状态为今日,并且对账单的操作增加删除的功能。
在完成了删除功能之后,再增加上一个所有信息模糊搜索的功能,以方便搜索现有的账单消息并对其进行汇总

记账本安卓软件完成。感动,实践证明,在学习好helloworld之后,记账本还是能在一天多赶出来的
压力是使人有无限动力的源泉
七天从零基础学习android(3)--实现过程的更多相关文章
- 七天从零基础学习android(2)--第一个安卓程序
在环境配置的那一部分,已经把基础的环境配置好了,接下来应该实现第一个安卓程序,就是著名的hello world 先在avd里面新建一个虚拟机,并且启动它 然后该虚拟机器能够在eclipse上正常识别 ...
- 七天从零基础学习android(1)--配置环境
在写这篇文的时候android开发经验还是0,是一个萌新,这是一篇记录一个萌新从零android编程基础到能编写一个记账本的开发过程(至少我是这样美好的希望着的) 首先因为是没有开发基础的,直接上百度 ...
- [原]零基础学习视频解码之android篇系列文章
截止今天,<零基础学习视频解码系列文章>.<零基础学习在Android进行SDL开发系列文章>以及<零基础学习视频解码之android篇>系列文章基本算是告一段落了 ...
- [原]零基础学习在Android进行SDL开发系列文章
[原]零基础学习SDL开发之移植SDL2.0到Android [原]零基础学习SDL开发之在Android使用SDL2.0显示BMP图 [原]零基础学习SDL开发之在Android使用SDL2.0显示 ...
- [原]零基础学习SDL开发之在Android使用SDL2.0显示BMP图
关于如何移植SDL2.0到安卓上面来参考我的上一篇文章:[原]零基础学习SDL开发之移植SDL2.0到Android 在一篇文章我们主要使用SDL2.0来加载一张BMP图来渲染显示. 博主的开发环境: ...
- [原]零基础学习SDL开发之在Android使用SDL2.0显示BMP叠加图
关于如何移植在android上使用SDL,可以参考[原]零基础学习SDL开发之移植SDL2.0到Android 和 [原]零基础学习SDL开发之在Android使用SDL2.0显示BMP图 . 在一篇 ...
- 如何从零基础学习VR
转载请声明转载地址:http://www.cnblogs.com/Rodolfo/,违者必究. 近期很多搞技术的朋友问我,如何步入VR的圈子?如何从零基础系统性的学习VR技术? 本人将于2017年1月 ...
- CSS零基础学习笔记.
酸菜记 之 CSS的零基础. 这篇是我自己从零基础学习CSS的笔记加理解总结归纳的,如有不对的地方,请留言指教, 学前了解: CSS中字母是不分大小写的; CSS文件可以使用在各种程序文件中(如:PH ...
- 【零基础学习iOS开发】【转载】
原文地址:http://www.cnblogs.com/mjios/archive/2013/04/24/3039357.html 本文目录 一.什么是iOS 二.主流手机操作系统 三.什么是iOS开 ...
随机推荐
- vue跨域解决及打包
打包之前需要修改如下配置文件: 配置文件一:build>>>utils.js (修改publicPath:"../../" , 这样写是处理打包后找不到静态文件( ...
- MongoDB最简单的入门教程之二 使用nodejs访问MongoDB
在前一篇教程 MongoDB最简单的入门教程之一 环境搭建 里,我们已经完成了MongoDB的环境搭建. 在localhost:27017的服务器上,在数据库admin下面创建了一个名为person的 ...
- 分享一个开源的JavaScript统计图表库,40行代码实现专业统计图表
提升程序员工作效率的工具/技巧推荐系列 推荐一个功能强大的文件搜索工具SearchMyFiles 介绍一个好用的免费流程图和UML绘制软件-Diagram Designer 介绍Windows任务管理 ...
- 禁用DRM
10G: alter system set "_gc_policy_time"=0 scope=spfile sid='*'; alter system set "_gc ...
- Python 风格规范
分号 不要在行尾加分号, 也不要用分号将两条命令放在同一行. 行长度 每行不超过80 个字符 例外: 如果使用Python 2.4 或更早的版本, 导入模块的行可能多于80 个字符. Pyth ...
- ubuntu卡机
卡机了用ctrl+alt+t打开终端然后top看后台程序 最后kill -9 + PID就能把最影响问题的程序杀掉 我之前就杀了一个占100%cpu的程序
- 搜索 || DFS || POJ 2488 A Knight's Journey
给一个矩形棋盘,每次走日字,问能否不重复的走完棋盘的每个点,并将路径按字典序输出 *解法:按字典序输出路径,因此方向向量的数组按字典序写顺序,dfs+回溯,注意flag退出递归的判断,并且用pre记录 ...
- 手把手入门docker (好多图)
1.什么是docker? ---->我的理解是将许多应用一起打包成一个镜像,拿这个镜像去其他服务器上运行起来就可以.不需要单个单个去配置啦. 2.怎样在window下的安装. ---->刚 ...
- sqlserver差异备份3117
1.出现错误"3117" 2.完整备份/选项/不对数据库执行任何操作 3.数据库显示"正在还原" 4.差异备份/选项/回滚 5.数据库完整备份与差异备份成功
- python读取excel学习(1)
#coding=gbk #coding=utf-8 import xlrd table = xlrd.open_workbook(r'E:\test.xlsx') #sheet = table.she ...