布局:
<?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--简单的计算器实现所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)