正文
实验报告写了很多,博文倒是第一次写,可能废话颇多,望多多包涵。。。
当得知交作业的期限时我表示惊讶和惭愧,因为那个时候大概也只有我还没有搭好环境吧。。android总是以在图书馆找不到书为借口一拖再拖。。其实我是在去上海的飞机上才搭好了环境,看到模拟器弹出的界面稍感欣慰,虽然速度极其之慢。。因为难得去找男朋友所以没有做任何学习的打算,8号归来补觉一天,在网上买的书现在还没有寄到!找俱乐部借基础的书又借出去了。。传的视频资料目前正在续传中。。好吧。。我承认这是我懒惰的借口。。不过我好不容易找玉姐(即杨萧玉同学)借到一本。。于是今天!做完数据结构的实验后!我毅然决然决定着手android的学习!(我是个诚实的孩子。。说实话需要勇气。。)第一次废话多些,算是给自己的懒惰找点借口嘿嘿~
下面言归正传。。。先来个界面的截图吧。。不得不承认它真的很丑。。作为女生我很惭愧。。
首先确定了布局,计算器自然想到表格布局了,但是我一直以为表格布局必须每行每列很规范,一行的格少的话就只在左边显示了,比如clear和“《-”在“7"和"8"的正上方。。于是我就想下面规范的那一群用表格,上面是两个线性布局。。其实我是受java里面panel的启发。。面板上可以有面板嘛。。(请原谅一个初学者的无知。。)就那一本有限的参考书,我表示内容太过言简意赅。。没有看懂怎么组合布局。。上网google一下。。发现有一个android:layout_span的东西(eclipse的Button标签里的提示没有这个啊!强烈抗议!)。。于是实现刚开始设想的这个界面就容易了。。先是EditText,然后<TableRow>一行一行放,clear是将layout_span="3"了。。”《—”这个刚开始报错,因为<用的英文的所以应该是和标签有冲突吧,我异想天开加个转义的\也不行就弄成中文的了。。哦对,stretchColumns=“*”要拉伸一下,不然很丑。。另外这些布局都是在main.xml里写的。。
EditText的值刚开始是"0.",但是默认显示在左边,不符合习惯,加了android:gravity="center_vertical|right" 就好了。。个人觉得google比书好用多了。。在java文件里,构造了private String tmp,用来改变EditText的内容,每次onclick时,将该button的值追加在tmp后并settext显示出来,clear就是set成"0."了,tmp也要跟着清空一下,“《—”就是用一下substring,反正是java,猜也能猜出来了~BUG:clear的时候我把tmp=""了,但是再点按钮的时候还是追加在原来的tmp上唉。。我没有灯好不方便,明天再说吧~
加减乘除就是先把string转化数字运算后在输出,都是在onClick()里写的。对每个按钮的处理很类似,代码感觉好重复啊。。
其实我还没有编完。。bug总是会有的。。至于声音的添加还没有弄,版本控制器也没有来得及看,这周事情比较多,本来想先把这个放一放呢,但是看大家都交了实在是大势所趋。。。所以交一篇雏形的雏形。。。
总体感觉,有了java的基础还是蛮好的,今天大概了解了android开发到底怎么回事,还是比较容易上手的。。博文我肯定还会追加内容的,要做的东西还很多,这个实在是拿不出手唉。。先凑合这看吧。。PS:希望我的书快点寄到,还有求帮助文档~~~~
/*****************************************************************************************
第二天
*****************************************************************************************/
今天着手进行声音的添加和版本控制器的学习。。另外把很水很水的计算器变成了比较水的计算器。。
由于昨天急着交博文做的很仓促,bug果然很多,比如只能算一种运算,算另一种的时候会结果有误。因为只能在单击运算符和等号的时候进行计算,获得result的值,所以先算减再算加就会忽视最后一次减法运算,就声明了char(为了switch) flag=' ';然后每次单击会设置flag的值,这样就知道之前的运算是什么了。还有一个问题我还不知道怎么回事。。计算含小数点的数有时错有时对,我没找到出错的规律,没搞明白。。用的都是double类型来进行加减,5-3.2=1.79999999999998,但是30-3.2就等于26.8,我问任震宇他拿出来自己的手机,打开了自带的计算器(是android 2.1版本的)计算12.43-12.4=0.02999999999999,于是我有些释怀了。。我输出了计算前的减数和被减数,都是对的,算了就可能出现上述结果,估计还是double精度的事儿吧。。
添加声音我弄了快一天了就是没声!书上讲的都是MediaPlayer,感觉这都是播放音乐的,又在网上搜出来SoundPool,两个我都试了还是不行!我先是把.mid的声音文件拖到res/raw下,然后试了两种方法都失败了。。有时候是强制退出。。网上的资料内容都一样,没几个不同的版本,还没搞明白。。明天上午英语演讲还没准备。。声音暂且放一放。。。
然后是版本控制器。。群共享上的文件打不开。。在网上找到了不错的教程~记得当时讲的要设为仓库然后文件夹上就会有个对号~不过没有设也能正常操作啊。。可以获取网上的资源,也可以本地克隆。。也能上传到服务器上,配置一下就好。。不过没有试过和同学互相pull,push东西。。赶紧准备speech去了...早知道不选高级口语了⊙﹏⊙b汗。。。