千家信息网

Android Studio怎么实现简易计算器设计

发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,今天小编给大家分享一下Android Studio怎么实现简易计算器设计的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有
千家信息网最后更新 2025年11月06日Android Studio怎么实现简易计算器设计

今天小编给大家分享一下Android Studio怎么实现简易计算器设计的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

一、题目

1、如图所示(实际设计,类似此界面样式即可,全屏时,按钮将会纵向拉伸),利用网格布局管理器设计一个居中、满屏计算器,项目名称:clc666b;(666,改成自己的实际编号)

2、加、乘分别用2个单选按钮进行选择;

3、为clc666b编写程序(clc666a不需要编程,只设计界面即可),根据选择的加(乘)单选按钮,实现两个数的加法和乘法的简单计算。

4、为了简化程序设计,上方的数据区也可以设计成3个文本框(如果一个文本框实现功能,则更好),分别用作被(乘)加数、加(乘)数、合(积);

二、分析

1.首要的目标是先做一个窗口,窗口设计需要滿屏平分,所以要修改每一个部件的权重。

2.java程序设计,要监听不同种类的按键,网上基本上都是普通按键的程序,没有radiobutton的,这个题目对于我这种新手来说有点不太友好,不能直接抄网上的,还要根据老师上课讲的改一改。

(1)当按下数字按键时,把按键所对应的数字存到一个字符串中,然后更新text。

(2)如果按下删除的时候把字符串最后一个字符删去即可,然后更新text.。

(3)当按下运算符号键时,把前面的字符存在一个字符串a中,并保存运算符号键的id地址。

(4)继续进行前两步的操作,直到按下等于号键运行(5)。

(5)把运算符号后的给字符串b,根据id来对a和b进行运算,更新text。

三、代码

1.更新后的xml代码

          

2.更新后的java代码

package com.example.lenovo.clc231b; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle;import android.view.View;import android.widget.Button;import android.view.View.OnClickListener;import android.widget.TextView; public class MainActivity extends AppCompatActivity {     private String num = "";    private String num_zong = "";    private int fore,back,lenth,id;    TextView textview1;    Button nm1;    Button nm2;    Button nm3;    Button del;    Button equ;    Button mul;    Button add;     @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);         textview1=(TextView)findViewById(R.id.textview1);         nm1 = (Button)findViewById(R.id.nm1);        nm2 = (Button)findViewById(R.id.nm2);        nm3 = (Button)findViewById(R.id.nm3);        del = (Button)findViewById(R.id.del);        equ = (Button)findViewById(R.id.equ);        mul = (Button)findViewById(R.id.mul);        add = (Button)findViewById(R.id.add);         nm1.setOnClickListener(listener);        nm2.setOnClickListener(listener);        nm3.setOnClickListener(listener);        del.setOnClickListener(listener);        equ.setOnClickListener(listener);        mul.setOnClickListener(listener);        add.setOnClickListener(listener);     }    //监听按钮    public OnClickListener listener = new OnClickListener() {        @Override        public void onClick(View view) {            switch (view.getId()){                case R.id.nm1:                    number(1);                    break;                case R.id.nm2:                    number(2);                    break;                case R.id.nm3:                    number(3);                    break;                case R.id.del:                    delete();                    break;                case R.id.equ:                    result();                    break;                case R.id.mul:                    Get_mul_add(1);                    break;                case R.id.add:                    Get_mul_add(2);                    break;                default:                    break;            }            textview1.setText(num);        }    };     private void Get_mul_add(int flag){        fore = Integer.valueOf(num);        if(flag == 1) {            id = R.id.mul;            num += "×";        }        else {            id = R.id.add;            num += "+";        }        textview1.setText(num);        lenth = num.length();    }     private void result() {        num_zong = num;        num = num.substring(lenth);        back = Integer.valueOf(num);        if(id == R.id.mul)            num = String.valueOf((fore*back));        else            num = String.valueOf((fore+back));        num = num_zong + "=" + num;    }     private void delete() {        num = num.substring(0,num.length()-1);    }     private void number(int i) {        num += i;    }}

3.原来的代码

          
package com.example.lenovo.clc231b; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle;import android.view.View;import android.widget.Button;import android.view.View.OnClickListener;import android.widget.RadioButton;import android.widget.RadioGroup;import android.widget.TextView; public class MainActivity extends AppCompatActivity {     private String num = "";    private String num_zong = "";    private int fore,back,lenth,id;    TextView textview1;    RadioGroup question2;    Button button1;    Button button2;    Button button3;    Button button4;    Button button5;     @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);         textview1=(TextView)findViewById(R.id.textview1);         button1 = (Button)findViewById(R.id.button1);        button2 = (Button)findViewById(R.id.button2);        button3 = (Button)findViewById(R.id.button3);        button4 = (Button)findViewById(R.id.button4);        button5 = (Button)findViewById(R.id.button5);        question2 = (RadioGroup) findViewById(R.id.radioGroup2);         button1.setOnClickListener(listener);        button2.setOnClickListener(listener);        button3.setOnClickListener(listener);        button4.setOnClickListener(listener);        button5.setOnClickListener(listener);        question2.setOnClickListener(listener);     }     public OnClickListener listener = new OnClickListener() {        @Override        public void onClick(View view) {            switch (view.getId()){                case R.id.button1:                    number(1);                    break;                case R.id.button2:                    number(2);                    break;                case R.id.button3:                    number(3);                    break;                case R.id.button4:                    delete();                    break;                case R.id.button5:                    result();                    break;                default:                    break;            }             question2.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {                @Override                public void onCheckedChanged(RadioGroup group, int checkedId) {                    //获取被选择的单选按钮                    RadioButton r = (RadioButton) findViewById(checkedId);                    //Toast.makeText(MainActivity.this,"你的爱好是:" + r.getText(), Toast.LENGTH_SHORT).show();                    id = r.getId();                    textview1.setText(num + r.getText());                    fore = Integer.valueOf(num);                    num = num+ r.getText();                    lenth = num.length();                }            });            textview1.setText(num);        }    };//乘号id是2131165311  加号id是2131165312    private void result()    {        num_zong = num;        num = num.substring(lenth);        back = Integer.valueOf(num);        if(id == 2131165311)            num = String.valueOf((fore*back));        else            num = String.valueOf((fore+back));        num = num_zong + "=" + num;    }     private void delete(){        num = num.substring(0,num.length()-1);    }     private void number(int i){        num = num + i;    }}

以上就是"Android Studio怎么实现简易计算器设计"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。

设计 字符 更新 按钮 代码 字符串 按键 知识 程序 篇文章 运算 计算器 符号 选择 简易 不同 内容 实际 数字 文本 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 数据库 必须得带用户名 智享网络技术有限公司 毕业生设计选题系统数据库课设 菏泽网络安全知识大全 嵌入式软件开发交叉编译器 ad网络安全距离设置 专升本4567空间数据库 关于手机网络安全方面文章 服务器主机 3DMax 你们用的那个数据库连接池 windows 怎样搭建服务器 房间宽带连接服务器 一个软件开发公司的股权 数据库结构的实现 服务器视频访问报404 服务器硬盘为什么有几个分区 数据库表信息怎么实现级联删除 综合管理服务器怎么套定额 校园网络安全法实施细则 千万数据搜索用什么数据库 用网页上传数据到数据库 ice服务器关闭迷你玩家的反应 部队干部手机网络安全检讨书 西安一码通访问数据库 兰州互联网络科技有限公司 前瞻数据库开通学校 网络安全职业规划word 毕设系统需要服务器吗 数据库设计公众号 W10怎么设置服务器地址
0