android studio--简单的计算器实现

android studio--简单的计算器实现,第1张

概述布局:<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apkes/android"xmlns:tools="http://schemas.android.comools"android:layout_width="matc

布局:

<?xml version="1.0" enCoding="utf-8"?><linearLayout    xmlns:androID="http://schemas.androID.com/apk/res/androID"    xmlns:tools="http://schemas.androID.com/tools"    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent"    androID:orIEntation="vertical"    androID:background="@color/white"    tools:context="com.example.jisuanqi.MainActivity">    <TextVIEw        androID:ID="@+ID/screenshow"        androID:layout_wIDth="match_parent"        androID:layout_height="200dp"        androID:background="@androID:color/white"        androID:textcolor="@color/black"        androID:textSize="50sp"/>    //各按键    <linearLayout        androID:layout_wIDth="match_parent"        androID:layout_height="match_parent"        androID:orIEntation="vertical">        <linearLayout            androID:layout_wIDth="match_parent"            androID:layout_height="wrap_content"            androID:gravity="center">            <button                androID:layout_wIDth="160dp"                androID:layout_height="80dp"                androID:text="÷"                androID:textSize="45sp"                androID:ID="@+ID/divIDe"                />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="×"                androID:textSize="45sp"                androID:ID="@+ID/times" />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="C"                androID:textSize="40sp"                androID:ID="@+ID/button_C" />        </linearLayout>        <linearLayout            androID:layout_wIDth="match_parent"            androID:layout_height="wrap_content"            androID:gravity="center">            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="7"                androID:textSize="40sp"                androID:ID="@+ID/button_7" />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="8"                androID:textSize="40sp"                androID:ID="@+ID/button_8" />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="9"                androID:textSize="40sp"                androID:ID="@+ID/button_9" />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="+"                androID:textSize="40sp"                androID:ID="@+ID/button_add" />        </linearLayout>        <linearLayout            androID:layout_wIDth="match_parent"            androID:layout_height="wrap_content"            androID:gravity="center">            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="4"                androID:textSize="40sp"                androID:ID="@+ID/button_4" />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="5"                androID:textSize="40sp"                androID:ID="@+ID/button_5" />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="6"                androID:textSize="40sp"                androID:ID="@+ID/button_6" />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="-"                androID:textSize="50sp"                androID:ID="@+ID/button_minus" />        </linearLayout>        <linearLayout            androID:layout_wIDth="match_parent"            androID:layout_height="wrap_content"            androID:gravity="center">            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="1"                androID:textSize="40sp"                androID:ID="@+ID/button_1" />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="2"                androID:textSize="40sp"                androID:ID="@+ID/button_2" />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="3"                androID:textSize="40sp"                androID:ID="@+ID/button_3" />            <button                androID:layout_wIDth="80dp"                androID:layout_height="80dp"                androID:text="."                androID:textSize="45sp"                androID:ID="@+ID/button_dot" />        </linearLayout>        <linearLayout            androID:layout_wIDth="match_parent"            androID:layout_height="wrap_content"            androID:gravity="center">            <button                androID:layout_wIDth="160dp"                androID:layout_height="80dp"                androID:text="0"                androID:textSize="40sp"                androID:ID="@+ID/button_0" />            <button                androID:layout_wIDth="160dp"                androID:layout_height="80dp"                androID:text="="                androID:textSize="45sp"                androID:ID="@+ID/button_equal" />        </linearLayout>    </linearLayout></linearLayout>

java代码:

package com.example.jisuanqi;import androID.support.v4.app.INotificationSIDeChannel;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.button;import androID.app.Activity;import androID.Widget.TextVIEw;import androID.Widget.Toast;public class MainActivity extends Activity  {    private TextVIEw windowshow;    private button   but_0,but_1,but_2,but_3,but_4,but_5,but_6,but_7,but_8,but_9,but_C,divIDe,            multiply,but_add,but_minus,but_dot,but_equal;    double first_num=0,second_num=0;    double result=0;    int operation=0;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_main);        windowshow=(TextVIEw)findVIEwByID(R.ID.screenshow);        but_0=(button)findVIEwByID(R.ID.button_0);        but_0.setonClickListener(new MyOnClickListener());        but_1=(button)findVIEwByID(R.ID.button_1);        but_1.setonClickListener(new MyOnClickListener());        but_2=(button)findVIEwByID(R.ID.button_2);        but_2.setonClickListener(new MyOnClickListener());        but_3=(button)findVIEwByID(R.ID.button_3);        but_3.setonClickListener(new MyOnClickListener());        but_4=(button)findVIEwByID(R.ID.button_4);        but_4.setonClickListener(new MyOnClickListener());        but_5=(button)findVIEwByID(R.ID.button_5);        but_5.setonClickListener(new MyOnClickListener());        but_6=(button)findVIEwByID(R.ID.button_6);        but_6.setonClickListener(new MyOnClickListener());        but_7=(button)findVIEwByID(R.ID.button_7);        but_7.setonClickListener(new MyOnClickListener());        but_8=(button)findVIEwByID(R.ID.button_8);        but_8.setonClickListener(new MyOnClickListener());        but_9=(button)findVIEwByID(R.ID.button_9);        but_9.setonClickListener(new MyOnClickListener());        but_add=(button)findVIEwByID(R.ID.button_add);        but_add.setonClickListener(new MyOnClickListener());        but_C=(button)findVIEwByID(R.ID.button_C);        but_C.setonClickListener(new MyOnClickListener());        divIDe=(button)findVIEwByID(R.ID.divIDe);        divIDe.setonClickListener(new MyOnClickListener());        but_dot=(button)findVIEwByID(R.ID.button_dot);        but_dot.setonClickListener(new MyOnClickListener());        but_equal=(button)findVIEwByID(R.ID.button_equal);        but_equal.setonClickListener(new MyOnClickListener());        but_minus=(button)findVIEwByID(R.ID.button_minus);        but_minus.setonClickListener(new MyOnClickListener());        multiply=(button)findVIEwByID(R.ID.times);        multiply.setonClickListener(new MyOnClickListener());    }    class MyOnClickListener implements  VIEw.OnClickListener{        public voID onClick(VIEw v){            switch (v.getID()){                case R.ID.button_C:                    windowshow.setText(null);                    break;                case R.ID.button_0:                    String str0=windowshow.getText().toString();                    str0+="0";                    windowshow.setText(str0);                    break;                case R.ID.button_1:                    String str1=windowshow.getText().toString();                    str1+="1";                    windowshow.setText(str1);                    break;                case R.ID.button_2:                    String str2=windowshow.getText().toString();                    str2+="2";                    windowshow.setText(str2);                    break;                case R.ID.button_3:                    String str3=windowshow.getText().toString();                    str3+="3";                    windowshow.setText(str3);                    break;                case R.ID.button_4:                    String str4=windowshow.getText().toString();                    str4+="4";                    windowshow.setText(str4);                    break;                case R.ID.button_5:                    String str5=windowshow.getText().toString();                    str5+="5";                    windowshow.setText(str5);                    break;                case R.ID.button_6:                    String str6=windowshow.getText().toString();                    str6+="6";                    windowshow.setText(str6);                    break;                case R.ID.button_7:                    String str7=windowshow.getText().toString();                    str7+="7";                    windowshow.setText(str7);                    break;                case R.ID.button_8:                    String str8=windowshow.getText().toString();                    str8+="8";                    windowshow.setText(str8);                    break;                case R.ID.button_9:                    String str9=windowshow.getText().toString();                    str9+="9";                    windowshow.setText(str9);                    break;                case R.ID.button_dot:                    String strdot=windowshow.getText().toString();                    strdot+=".";                    windowshow.setText(strdot);                    break;                case R.ID.button_add:                    String sTradd=windowshow.getText().toString();                    if(sTradd.equals(null)){                        return;                    }                    first_num=Double.valueOf(sTradd);                    sTradd+="+";                    windowshow.setText(null);                    operation=1;                    break;                case R.ID.button_minus:                    String strminus=windowshow.getText().toString();                    if(strminus.equals(null)){                        return;                    }                    first_num=Double.valueOf(strminus);                    strminus+="-";                    windowshow.setText(null);                    operation=2;                    break;                case R.ID.times:                    String strmultiply=windowshow.getText().toString();                    if(strmultiply.equals(null)){                        return;                    }                    first_num=Double.valueOf(strmultiply);                    strmultiply+="*";                    windowshow.setText(null);                    operation=3;                    break;                case R.ID.divIDe:                    String strdivIDe=windowshow.getText().toString();                    if(strdivIDe.equals(null)){                        return;                    }                    first_num=Double.valueOf(strdivIDe);                    strdivIDe+="/";                    windowshow.setText(null);                    operation=4;                    break;                case R.ID.button_equal:                    String strequ=windowshow.getText().toString();                    second_num=Double.valueOf(strequ);                    // windowshow.setText(null);                    switch (operation){                        case 1:                            result=first_num+second_num;                            windowshow.setText(String.valueOf(first_num)+"+"+String.valueOf(second_num)+"="+String.valueOf(result));                            break;                        case 2:                            result=first_num-second_num;                            windowshow.setText(String.valueOf(first_num)+"-"+String.valueOf(second_num)+"="+String.valueOf(result));                            break;                        case 3:                            result=first_num*second_num;                            windowshow.setText(String.valueOf(first_num)+"×"+String.valueOf(second_num)+"="+String.valueOf(result));                            break;                        case 4:                            if(second_num==0){                                windowshow.setText("被除数不能为0!");                            }                            else {                                result = first_num / second_num;                                windowshow.setText(String.valueOf(first_num) + "÷" + String.valueOf(second_num) + "=" + String.valueOf(result));                            }                            break;                        case 5:                            result=first_num/100;                            windowshow.setText(String.valueOf(first_num) + "%" +"="+String.valueOf(result));                            break;                        default:                            result=0;                            break;                    }            }        }    }}

效果图: 

 

总结

以上是内存溢出为你收集整理的android studio--简单的计算器实现全部内容,希望文章能够帮你解决android studio--简单的计算器实现所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/998875.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存