Androidstudio实现一个简易的加法器——分享两种方法实现(日常作业练习)
2014 年 12 月 18 日
Androidstudio实现一个简易的加法器——分享两种方法实现(日常作业练习)
————安德风
一、作业题目要求:
二、实现题目第一问(等号通过按钮实现【button】)
1、前期需要在activity_main.xml文件设计布局
最终布局效果图
2、控件准备:
需要2个EditText控件(两个输入文本框):EditText1(用来作为加法1)、EditText2(用来作为加法2)
2个TextView控件: TextView1(用作“+”),TextView2(用作输出求和)
1个Button控件:Button1(用作“=”,用来点击等于时,TextView2作为输出和的结果)
PS:以上控件要求是用来作为布局使用,在MainActivity.java 文件中实现功能部分只用到:
EditText1(用来作为加法1) =》更改ID为et1 、EditText2(用来作为加法2) =》更改ID为et2
Button1(用作“=”,用来点击等于时,TextView2作为输出和的结果 )=>更改ID为bt
TextView2(用作输出求和) =》更改ID为tv
更改ID名可以自定义,要求规范更改控件ID名要求见明知意,还有控件ID最好与MainActivity.java 文件中声明变量一致便于修改。
3、activity_main.xml界面布局源代码:
1 2 8 9 22 23 34 35 45 46 57 58 67 68
4、实现功能MainActivity.java源代码
1 package com.example.computer; 2 3 import androidx.appcompat.app.AppCompatActivity; 4 5 import android.os.Bundle; 6 import android.view.KeyEvent; 7 import android.view.View; 8 import android.widget.Button; 9 import android.widget.EditText; 10 import android.widget.TextView; 11 12 public class MainActivity extends AppCompatActivity implements View.OnClickListener { 13 14 EditText et1;//声明加法1输入文本框变量为et1(与控件ID一致) 15 EditText et2;//声明加法2输入文本框变量为et2(与控件ID一致) 16 TextView tv;//声明和普通文本框变量为tv(与控件ID一致) 17 Button bt;//声明等于按钮控件变量为bt(与控件ID一致) 18 int sum;//定义一个sum自定义变量方便后面方法求和存放求和的值 19 20 @Override 21 protected void onCreate(Bundle savedInstanceState) { 22 super.onCreate(savedInstanceState); 23 setContentView(R.layout.activity_main); 24 25 et1 = findViewById(R.id.et1);//寻找加法1输入文本框ID 26 et2 = findViewById(R.id.et2);//寻找加法2输入文本框ID 27 tv = findViewById(R.id.tv);//寻找和普通文本框ID 28 bt=findViewById(R.id.bt);//寻找等于号普通按钮ID 29 bt.setOnClickListener(this);//给等于号普通按钮安装一个监听器,便于点击等于号按钮,和就能求出 30 31 32 } 33 //String => int =>String 34 @Override 35 public void onClick(View v) { 36 String j1=et1.getText().toString();//通过et1ID(加法1输入文本框)得到文本内容(数据类型为字符串型)赋值给j1(也就是说j1代表加法1,可以理解为是它的小名) 37 String j2=et2.getText().toString();//通过et2ID(加法2输入文本框)得到文本内容(数据类型为字符串型)赋值给j2(也就是说j2代表加法2,可以理解为是它的小名) 38 int num1=Integer.valueOf(j1).intValue();//将j1字符串类型强制转换为int类型 39 int num2=Integer.valueOf(j2).intValue();//将j2字符串类型强制转换为int类型 40 sum=num1+num2;//开始运算加法1+ 加法2=和(sum代表和的变量) 41 j1=String.valueOf(sum);//再将sum(和),由int类型转换为string型便于,setText()输出(只能输出字符串类型),赋值给j1或者j2帮忙代理存储数据 42 tv.setText(j1);//由于setText(只能输出字符串类型)所以通过j1(加法1或者j2加法2)代理帮忙存储来输出和的值 43 60 61 } 62 }
5、实现文本边框border.xml源代码:
1 2 3 4 6 9 11 16 17 18 19 20 24 27 29 34 35 36
6、最终在模拟器调试代码效果图:
三、实现题目思考题第二问(等号通过普通文本框实现【TextView】)