移通152 王一帆
初语:作为Android基础初学者,写此博客只是为了记录自己的学习历程,给自己做总结。每次练习程序时遇到的各种问题希望能有所总结和收获,也希望能有幸被大神看见,指出不足加以改进,谢谢!
首先需要对环境进行搭建和配置。我使用的Android studio,由于它对电脑的配置要求极高,原有电脑的配置如果再开模拟器的话,程序都带不动了。所以我对我的电脑进行了大改造,在所有硬件都支持的情况下,我终于正式安装我的studio,开始我的第一个Android小程序——一个简单的乘法运算计算器。
在写这个程序时,我觉得需要明白的是整个activity里面需要些什么东西,要计算肯定是需要提供两个输入值的文本框,一个EditText和一个Button控件,最后在跳转到另一页面显示出结果。
下面是我的个人总结:
1.首先创建了一个主界面,在Layout中通过拖拽的方式设计布局。简单地计算器有:EditText、TextView和Button控件,分别对各自定义id值
2.编写主界面。由于计算器操作界面是分别输入两个值,在通过乘积计算得到最终的结果。因此需要做的是:
第一步:声明四个控件的对象,通过findViewById()方法来得到相应的值。但需要注意的是通过Id得到的值是字符串,需要转换成各自对应的控件类型。TextView和Button控件对象的值可以通过vlues.xml来获取,这样的好处在于,可以被多种语言访问,具有国际化。
第二步:给按钮控件对象注册监听,可以采用匿名内部类,也可以不采用。但都需要OnClickListener(设置监听对象),来调用onClick()方法。将EditText控件对象的值获得并存放在Intent对象中,再使用键值对,来分别存放获得的这两个值。
intent.setClass(MainActivity.this,ResultActivity.class);的含义是intent要打开的activity,第一个参数代表是谁打开的;第二个参数代表要打开的是谁。
第三步:使用Intent对象来启动第二个界面。
3.在新建的第二个界面里,需要做的是接收从第一个窗体中传递过来的值,然后计算将结果显示出来。
第一步:声明一个TextVeiw控件对象,在得到Intent中的值,通过键来找到对应的值。但是需要注意的是这里的值是字符串,要转化成整型。
第二步:声明一个整型变量,将乘积结果赋值给这个整型变量,在用findVeiwById()的方法通过找乘积结果来赋给这个第一步已经定义好的控件对象。
第三步:设置TextVeiw控件对象的文本为这个整型的值,但需要整型转化成字符串。
4.运行结果,完成。
编写代码时遇到的问题:
1.连接两个窗口时需要一个中间人来进行值得传递。在这里Intent一般用于存放得到的值,来开启新的窗口
2.运行时报错,跳转不到第二个界面,原因在于AndroidManifest.xml文档里没有将第二个窗体写进去。至于这个文档是主要干什么的:这个文件是用来注册所有的视图窗口的,如果是系统自带的activity,那么系统会自动写进去,否则就要人工添加进去。
3.当我解决了出现的第二个问题后,还报错,是由于它说空指针异常,检查了下,我将它们继承Activity,在重开模拟器,程序运行。这是我个人的解决办法,不知道是不是针对其他人适用,仅供参考。