2017.4.1

今天布局界面基本完成,现在写了一点事件绑定。计划是多用动态绑定,随时用随时改。关于布局方面,昨天弄到很晚,原因是Layout使用错误,用的自带的,没仔细看,预览的时候没有问题但是真机调试就出错。是兼容性问题,很多的安卓系统不支持constrainlayout(6.0不支持不要问我为什么知道)。改用LinearLayout,简单嵌套了一下,主体还是用了几个LinearLayout分别写了每一行,其中用了几个LinearLayout用来调整按钮间隙。然后稍微调了字号和对齐方式。

2017.4.2

今天简单写了整数的加减乘除,为了看一下这种实现方法是否可用,但是没有写清零,这就导致了一个问题,如果后台没有关闭程序就会一直将最后的结果一直作为底数运算,并且没有运算符连接,会造成蜜汁错误。还有,在学长的提醒下,发现了double和int型数据在连接字符串中的不同,在以后写double的时候一定要注意。

2017.4.3

今天写了后退,考虑以后写double型的时候进行相同的判断。int型有很多的不足,尤其是开平方的时候涉及到强制类型转换,需要尽快将数据类型扩展到double。关于正负号和小数点还没有写。

2017.4.6

这几天主要是把数据类型改了double,今天完成小数点部分,连加之类的运算完成,但是真的不知道怎么办自动清空啊...感觉和连加之类的十分冲突,但是Windows计算器就是能这样的啊...其实也就是这样吧,突然觉得写计算器还好。

2017.4.7

各种连加完成,就差数值判断和自动清空了啊!还有就是让按钮不能按,这个还好,还好...(已经解决)争取周日前完成初步,然后面对脚本...之前让冬宇给我先乱按一通。

数值判断完成!就差自动清空了啊!!!大写的绝望

2017.4.9

初步版本完成,拿去测试。

2017.4.13

第一次测试测了19个错误,很难过。6个小时修改了4个BUG,还有至少两个BUG等着我。做完去睡觉

真的觉得会被打,代码量太多了,必须要修改。主要是各种按键重复代码过多,比如数字键还有功能键,用相似的代码应该就可以。除此之外,我的逻辑也比较复杂,判断用的变量也挺多的,而且可能还有没考虑到的地方。非常累,感觉计算器这种东西并不适合我的样子。

2017.4.14

代码量从2300缩小到600左右,bug也有修复,但是关于正负号和小数点还是有问题。bug13个,有一个只是我忘了改某一部分的代码(忘了复制粘贴),大体的逻辑没问题,就是带小数点以后输入0这个问题...有点可怕。尽量改,尽量早睡,嗯,只是尽量。

2015.4.15

改了BUG,昨天的问题基本解决,准备进行提交前最后一次测试。

还好,11个BUG,算是我之前几次通过的几个这次又出错了...觉得有点浪费机会,但是修复很快,自己也发现了一些其他的BUG,出错的最终应该会大幅下降一些。快做完这个项目了,觉得这次对自己算是一次很不错的提高吧,尤其是前几天的2300多行代码,虽然行数很多,但是主体的逻辑都是在这里实现的,后面重写的还是对这个逻辑的补充吧。其实写到后来,对于能出多少错已经没那么在乎了,更多的是对测试数据的好奇吧(虽然平常自己也有乱按)。之前也有过接近崩溃的时候吧,不过不管怎么说,都过去了不是吗。

Android 开发第一项目——计算器的开发记录的更多相关文章

  1. 循序渐进开发WinForm项目(6)--开发使用混合式Winform模块

    1.Winform数据访问模式定义 传统的Winform程序模块:用于传统的数据库通讯获取数据,这种方式获取数据,方便快捷,可以用于常规的业务系统的场景,用于单机版软件或者基于局域网内的业务系统软件. ...

  2. android 串口开发第一篇:搭建ndk开发环境以及第一个jni调用程序

    一:ndk环境搭建 1:开发环境 我使用的是android studio 2.3.3版本,搭建ndk开发环境比较简单,打开File----Settings----Appearance&Beha ...

  3. Eclipse安装Git插件以及通过Git导入华为软件开发云项目

    --内容提交-- 1.    Eclipse安装Git插件 2.    在Eclipse中导入华为软件开发云项目, 以及常用Git操作 一. Eclipse安装Git插件 现在从eclipse官网下载 ...

  4. vsCode开发flutter项目

    Visual Studio Code 安装: 下载链接:https://code.visualstudio.com/ 下载完成后根据步骤自行安装.     使用vsCode开发flutter项目需要部 ...

  5. iOS开发——高级技术精选&底层开发之越狱开发第一篇

    底层开发之越狱开发第一篇 做越狱开发也有一些时间了,有很多东西想总结一下,希望给他人一些借鉴,也是自己对过去开发经历的一些总结.个人不推荐使用盗版,这里主要以技术介绍为主. 这个系列里面主要介绍怎样进 ...

  6. web前端开发教程系列-1 - 前端开发编辑器介绍

    目录: 前言 一. Webstorm 1. 优点 2. 缺点 3. 教程 4. 插件 5. 技巧 二. SublimeText 1. 优点 2. 缺点 3. 教程 4. 插件 5. 技巧 前言 由于很 ...

  7. 开园第一篇 - 论移动开发环境 IOS与Android的差异

    首先,在真正写技术之前做个自我简介.本人08年开始学c语言 一年后,转vc++.开始接触MFC MFC做了两年.转眼11年了我考上了一个不知名的大专.搞C++发现没有市场了因为当时酷狗腾讯的软件已经日 ...

  8. 安卓开发第一步:Android Studio安装配置

    虽然本人是JAVA开发工程师平时主要开发Web App,但因为项目需求需要开发对应的移动端.一时又找不到合适的安卓开发人员,兄弟我只好被项目经理"抓来当壮丁了".俗话说好" ...

  9. 菜鸟成长日记之新手备忘录-IOS开发第一个项目总结

    2013年5月3号,开始找IOS开发工作(自学了大半年,做了一个功能不全的Demo,该出去见见世面了!),5月4号面试了第一家公司(是家刚成立一段时间的外包公司),5月5号第一家公司已二轮电话面试,5 ...

随机推荐

  1. css的扩展技术

    CSS的扩展技术 (在原来的CSS语言的基础上扩展了js,可以在里面写js ) 一.less 定义: @color:red; //定义颜色 @body-color:blue; @div-color:y ...

  2. Linux基础命令---uname显示计算机名称

    uname uname指令用来显示计算机硬件以及操作系统的相关信息,例如计算机名.内核版本.硬件架构. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.Fedora.SUSE.o ...

  3. Git抽取版本之间的差异,打包解压

    patch.sh文件代码 #!/bin/bash MY_SAVEIFS=$IFS #IFS=$(echo -en "\n\b") IFS=$'\n' build_dir=" ...

  4. linux 看执行任务的一些邮件

    cat /var/spool/mail/root From root@hadoop01.localdomain Fri Apr 12 18:44:01 2019 Return-Path: <ro ...

  5. JavaScript数组对象常用方法

    JavaScript数组对象常用方法 方法 形式 返回值 是否改变原数组 描述 concat -items: ConcatArray[] 追加之后的数组 否 连接两个或更多的数组,并返回结果.注意 c ...

  6. xtrabackup 2.4.3 BUG

    用XtraBackup对备份集进行apply log 的时候,卡在 xtrabackup 版本:2.4.3 InnoDB: Waited for 1535930 seconds for 128 pen ...

  7. List、Set、Map的区别

    (图一) 1.面试题:你说说collection里面有什么子类. (其实面试的时候听到这个问题的时候,你要知道,面试官是想考察List,Set) 正如图一,list和set是实现了collection ...

  8. Spring 极速集成注解 redis 实践

    Redis 做为基于内存的 Key-Value 数据库,用来做缓存服务器性价比相当高. 官方推出的面向 Java 的 Client Jedis,提供了很多接口和方法,可以让 Java 操作使用 Red ...

  9. ldap集成bitbucket

    confluence ldap配置跟jira ldap集成一样,请参考:https://www.cnblogs.com/imcati/p/9378668.html 需在 Global permissi ...

  10. android sdk下载及安装教程

    转自https://www.cnblogs.com/summary-2017/p/8073225.html 1.点击这个网址https://www.androiddevtools.cn/,打开页面后选 ...