Android studio实现简易的计算器功能

 更新时间:2022年05月20日 16:44:22   作者:dym_lyy  
这篇文章主要为大家详细介绍了Android studio实现简易的计算器功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了android studio简易运算器,供大家参考,具体内容如下

JAVA语句代码块:

package com.example.douyingming;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TextView;
import android.view.View;
import android.view.View.OnClickListener;

public class CompuActivity extends AppCompatActivity implements OnClickListener {
    private  String opr="+";  //记录当前运算符,最初运算符为+,可以更改
    private EditText et1,et2;
    private TextView tv;
    private Button bt;
    private RadioGroup rg;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.samplecompu);            //设置匹配页面为samplecompu
        rg=(RadioGroup)findViewById(R.id.radioGroup1); //单选按钮组的按钮匹配
        et1=(EditText)findViewById(R.id.editText1);//匹配第一个编辑框的按钮
        et2=(EditText)findViewById(R.id.editText2);//匹配第二个编辑框的按钮
        tv=(TextView)findViewById(R.id.textView1);//匹配显示文本

        bt=(Button)findViewById(R.id.button1);//获得按钮
        bt.setOnClickListener(this);   //设置计算按钮的监听器
        rg.setOnCheckedChangeListener(new OnCheckedChangeListener(){    //设置单选按钮监听器,获得单击时执行
            @Override
            public void onCheckedChanged(RadioGroup group,int checkedId){
                // TODO Auto-generated method stub
                RadioButton rb=(RadioButton)findViewById(checkedId); //设定RadioButton类rb,获得checkedId
                opr=rb.getText().toString();  //把rb强转为String类型,赋给opr
            }
        });
    }
    @Override
    public void onClick(View v){     //定义点击事件方法
        int sum,num1,num2;             //定义三个变量
        num1 = Integer.parseInt(et1.getText().toString());//接收et1文本框中的数字(强转为数字类型)
        num2=Integer.parseInt(et2.getText().toString());//接收et2文本框中的数字(强转为数字类型)
        if (opr.equals("+")){    //+法
            sum=num1+num2;
        }else if (opr.equals("-")){//减法
            sum=num1-num2;
        }else if(opr.equals("*")){//乘法
            sum=num1*num2;
        }else{//如果不是加减乘,就执行除法
            sum=num1/num2;
        }
        tv.setText(String.valueOf(sum));  //显示setText文本


    }


}

xml代码块

<?xml version="1.0" encoding="utf-8"?>
<!--
设置布局为垂直
-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <!--
    增加id为editText1
    宽度刚度匹配自己
    文本显示宽度为8
    *
    输入的类型为数字
    设置该文本框焦点
    -->

    <EditText
        android:id="@+id/editText1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="8"
        android:hint="请输入数字"
        android:inputType="number"
        android:text="">
        <requestFocus/>
    </EditText>
    <!-- 设置一个RadioGroup组
    增加一个id
    宽度匹配父类
    高度等于自己
    该组水平排列
    -->
    <RadioGroup
        android:id="@+id/radioGroup1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <!--
        增加id
        宽和高自己匹配
        选择为选中状态
        文本内容为+
        (四个RadioButton内容相同)
        -->
        <RadioButton
            android:id="@+id/radio0"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="+"/>
        <RadioButton
            android:id="@+id/radio1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="-"/>
        <RadioButton
            android:id="@+id/radio2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="*"/>
        <RadioButton
            android:id="@+id/radio3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="/"/>
    </RadioGroup>
    <!--
    增加id为editText2
    宽度刚度匹配自己
    文本显示宽度为8
    *
    输入的类型为数字
    -->
    <EditText
        android:id="@+id/editText2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="8"
        android:hint="请输入数2"
        android:inputType="number"
        android:text=""/>
    <!--
    *
    文本为=
    -->
    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="="/>
    <TextView
        android:id="@+id/textView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text=""/>
</LinearLayout>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Retrofit自定义请求参数注解的实现思路

    Retrofit自定义请求参数注解的实现思路

    这篇文章主要给大家介绍了Retrofit自定义请求参数注解的实现思路,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • Android实现微信摇骰子游戏

    Android实现微信摇骰子游戏

    这篇文章主要为大家详细介绍了Android实现微信摇骰子游戏的相关代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • Android开发之简单文件管理器实现方法

    Android开发之简单文件管理器实现方法

    这篇文章主要介绍了Android开发之简单文件管理器实现方法,简单实现了Android的文件目录查看,文件重命名,打开,删除等功能,需要的朋友可以参考下
    2016-01-01
  • 深入剖析Android消息机制原理

    深入剖析Android消息机制原理

    本篇文章主要介绍了Android消息机制,深入的了解了android的消息机制,需要的朋友可以了解一下、
    2016-11-11
  • android教程之把自己的应用加入到系统分享中

    android教程之把自己的应用加入到系统分享中

    在Android系统中打开相册中的某张图片, 点击右上角的分享按钮会弹出分享列表, 把自己的应用加入到里面来,下面是设置方法
    2014-02-02
  • Flutter实现打印功能的示例详解

    Flutter实现打印功能的示例详解

    这篇文章主要为大家详细介绍了如何通过 Flutter 实现调用打印机打印的功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-03-03
  • 功能强大的登录界面Android实现代码

    功能强大的登录界面Android实现代码

    这篇文章主要为大家分享了功能强大的登录界面Android实现代码,验证码制作方法,自带一键删除功能,用户名密码为空时抖动提示效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • Android 软引用和弱引用详解及实例代码

    Android 软引用和弱引用详解及实例代码

    这篇文章主要介绍了Android 软引用和弱引用详解的相关资料,并附实现实例代码,需要的朋友可以参考下
    2016-11-11
  • 深入了解Android中GestureDetector的定义与使用

    深入了解Android中GestureDetector的定义与使用

    Android中的GestureDetector 可以使用 MotionEvents 检测各种手势和事件,非常的好用。本文将会通过几个具体的例子来讲解一下GestureDetector的具体使用方法,需要的可以参考一下
    2023-01-01
  • Android微信端的下拉刷新功能

    Android微信端的下拉刷新功能

    在微信公众号内,在面对下拉刷新这个问题上,Android和iOS都自己的表现方式。下面通过本文给大家分享Android微信端的下拉刷新功能,需要的朋友参考下吧
    2017-06-06

最新评论