首頁 > 軟體

Android studio實現簡易的計算器功能

2022-05-20 19:00:04

本文範例為大家分享了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>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com