七天从零基础学习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开 ...
随机推荐
- 洛谷 P2153 [SDOI2009]晨跑
题目描述 Elaxia最近迷恋上了空手道,他为自己设定了一套健身计划,比如俯卧撑.仰卧起坐等 等,不过到目前为止,他坚持下来的只有晨跑. 现在给出一张学校附近的地图,这张地图中包含N个十字路口和M条街 ...
- 洛谷 U10223 Cx大帝远征埃及
题目背景 众所周知,Cx是一个宇宙大犇.Cx能文善武,一直在为大一统的实现而努力奋斗着.Cx将调用他的精锐军队,一个精锐士兵最多可以战胜十个埃及士兵.同时Cx是个爱才的人,他想要制定一份能使在占领埃及 ...
- Git 版本控制系统的基本使用、常用操作
以Ubuntu16.04操作系统为例(其他系统类似),主要记录常用的.基本操作: 0. 安装Git 分散型版本控制系统(CVS): sudo apt-get install git 1. 初始化本地配 ...
- Android安卓下拉阻尼效果实现原理及简单实例
原理 这种效果是通过自定义控件的方式来实现的,我自定义了一个控件类型,这个自定义控件(PullDownDumperLayout)继承自线性布局(LinearLayout). 用户可以下拉弹出的那个 ...
- jeecms
===标签=== <!-- 显示一级栏目对应的二级栏目 --> <!-- [@cms_channel_list parentId=c.id] [#if tag_list?size&g ...
- How to Slove MB SD C4 Cannot Access OBD2 Port
When using china clone mb sd connect compact 4 Multiplexer, it could not link to the car computer, M ...
- 写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度
import java.util.Scanner; /** * [程序38] * * 题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度. * * @author Jame ...
- MySQL-02 数据表管理
学习要点 数据类型 数据字段属性 数据表的类型及存储位置 索引 数据表对象管理 数据类型 数据库中的数据类型分为字段类型和值类型,定义如下: 在设计数据表字段的时候,字段类型定义为三大类:数值类.字符 ...
- 20. ROUTINES
20. ROUTINES ROUTINES表提供有关存储例程(存储过程和存储函数)的信息. ROUTINES表不包含内置SQL函数或用户定义函数(UDF). 名为mysql.proc Name的列表示 ...
- 大页(Huge Page)简单介绍
x86(包括x86-32和x86-64)架构的CPU默认使用4KB大小的内存页面(getconf PAGESIZE),但是它们也支持较大的内存页,如x86-64系统就支持2MB大小的大页(huge p ...