从开始接触android,到写计算器,虽然还有许多Bug,但总算迈出了步伐

package com.example.calculator_ordman;

import android.media.AudioManager;
import android.media.SoundPool;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
/* 加法计算器:张琨,2013-9-25 版本1.1 仅仅添加了按钮,能用按钮输入单一位数和符号*/
/* 加法计算器:张琨,2013-9-25 版本1.2 能用按钮输入多位数,无法运算*/
/* 加法计算器:张琨,2013-9-26 11:35  版本1.3 仅仅加法,直接按=会出错*/
/* 四则计算器:张琨,2013-9-27 11:30  版本1.4 四则运算,直接按=正常*/
/* 四则运算器:张琨,2013-10-12 17:38  版本1.5 按键发声,小数点功能没有实现*/
/* 老人按键发声计算器:张琨 2013-10-22 11:04 版本 1.6,实现小数点,但9*1.1这类计算不出结果*/
public class MainActivity extends Activity {
 public Button btn_1,btn_2,btn_3,btn_4,btn_5,btn_6,btn_7,btn_8,btn_9,btn_0;
 public Button btn_add,btn_jian,btn_chen,btn_chu,btn_dian,btn_equ;
 public Button btn_about, btn_help,btn_res;
 public String values_s = "", sum_v = "", str = "";
 public int fuhao = 0;
 public TextView nub_View;
    private SoundPool sound_1,sound_2,sound_3,sound_4,sound_5,sound_6,sound_7,sound_8,sound_9,sound_0,
   sound_add,sound_jian,sound_chen,sound_chu,sound_equ;
    private int music_1,music_2,music_3,music_4,music_5,music_6,music_7,music_8,music_9,music_0,
   music_add,music_jian,music_chen,music_chu,music_equ;
 
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  init();           //调用音频初始化方法
  btn_1 = (Button)findViewById(R.id.button1);
  btn_2 = (Button)findViewById(R.id.button2);
  btn_3 = (Button)findViewById(R.id.button3);
  btn_add = (Button)findViewById(R.id.button4);
  btn_4 = (Button)findViewById(R.id.button5);
  btn_5 = (Button)findViewById(R.id.button6);
  btn_6 = (Button)findViewById(R.id.button7);
  btn_jian = (Button)findViewById(R.id.button8);
  btn_7 = (Button)findViewById(R.id.button9);
  btn_8 = (Button)findViewById(R.id.button10);
  btn_9 = (Button)findViewById(R.id.button11);
  btn_chen = (Button)findViewById(R.id.button12);
  btn_dian = (Button)findViewById(R.id.button13);
  btn_0 = (Button)findViewById(R.id.button14);
  btn_equ = (Button)findViewById(R.id.button15);
  btn_chu = (Button)findViewById(R.id.button16);
  btn_about = (Button)findViewById(R.id.button17);
  btn_help = (Button)findViewById(R.id.button18);
  btn_res = (Button)findViewById(R.id.button19);
  
  nub_View = (TextView)findViewById(R.id.textView1);
  
  btn_1.setOnClickListener(listener);
  btn_2.setOnClickListener(listener);
  btn_3.setOnClickListener(listener);
  btn_4.setOnClickListener(listener);
  btn_5.setOnClickListener(listener);
  btn_6.setOnClickListener(listener);
  btn_7.setOnClickListener(listener);
  btn_8.setOnClickListener(listener);
  btn_9.setOnClickListener(listener);
  btn_0.setOnClickListener(listener);
  btn_add.setOnClickListener(fu_hao);
  btn_jian.setOnClickListener(fu_hao);
  btn_chen.setOnClickListener(fu_hao);
  btn_chu.setOnClickListener(fu_hao);
  btn_dian.setOnClickListener(fu_hao);
  btn_equ.setOnClickListener(fu_equ);
  btn_res.setOnClickListener(fu_hao);
  btn_about.setOnClickListener(about_next);
  btn_help.setOnClickListener(help_next);
 }
 private void init() {

sound_1= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);//第一个参数为同时播放数据流的最大个数,第二数据流类型,第三为声音质量
        music_1 = sound_1.load(this, R.raw.nub1, 1); //把你的声音素材放到res/raw里,第2个参数即为资源文件,第3个为音乐的优先级
       
        sound_2= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_2 = sound_2.load(this, R.raw.nub2, 1);
       
        sound_3= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_3 = sound_3.load(this, R.raw.nub3, 1);
       
        sound_4= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_4 = sound_4.load(this, R.raw.nub4, 1);
       
        sound_5= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_5 = sound_5.load(this, R.raw.nub5, 1);
       
        sound_6= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_6 = sound_6.load(this, R.raw.nub6, 1);
       
        sound_7= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_7 = sound_7.load(this, R.raw.nub7, 1);
       
        sound_8= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_8 = sound_8.load(this, R.raw.nub8, 1);
       
        sound_9= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_9 = sound_9.load(this, R.raw.nub9, 1);
       
        sound_0= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_0 = sound_0.load(this, R.raw.nub0, 1);
       
        sound_add= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_add = sound_add.load(this, R.raw.nub_add, 1);
       
        sound_jian= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_jian = sound_jian.load(this, R.raw.nub_jian, 1);
       
        sound_chen= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_chen = sound_chen.load(this, R.raw.nub_chen, 1);
       
        sound_chu= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_chu = sound_chu.load(this, R.raw.nub_chu, 1);
       
        sound_equ= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);
        music_equ = sound_equ.load(this, R.raw.nub_equ, 1);
    }
 
 public OnClickListener listener = new OnClickListener() {
  public void onClick(View v) {
    Button btn=(Button)v;
    switch (btn.getId()) {
    case R.id.button1:
     nub_View.setText(values_s+"1");
     values_s = values_s+"1";
     sound_1.play(music_1, 1, 1, 0, 0, 1);
     
    break;
    case R.id.button2:
     nub_View.setText(values_s+"2");
     values_s = values_s+"2";
     sound_2.play(music_2, 1, 1, 0, 0, 1);
     break;
    case R.id.button3:
     nub_View.setText(values_s+"3");
     values_s = values_s+"3";
     sound_3.play(music_3, 1, 1, 0, 0, 1);
     break; 
    case R.id.button5:
     nub_View.setText(values_s+"4");
     values_s = values_s+"4";
     sound_4.play(music_4, 1, 1, 0, 0, 1);
    break;
    case R.id.button6:
     nub_View.setText(values_s+"5");
     values_s = values_s+"5";
     sound_5.play(music_5, 1, 1, 0, 0, 1);
    break;
    case R.id.button7:
     nub_View.setText(values_s+"6");
     values_s = values_s+"6";
     sound_6.play(music_6, 1, 1, 0, 0, 1);
    break;
    case R.id.button9:
     nub_View.setText(values_s+"7");
     values_s = values_s+"7";
     sound_7.play(music_7, 1, 1, 0, 0, 1);
    break;
    case R.id.button10:
     nub_View.setText(values_s+"8");
     values_s = values_s+"8";
     sound_8.play(music_8, 1, 1, 0, 0, 1);
    break;
    case R.id.button11:
     nub_View.setText(values_s+"9");
     values_s = values_s+"9";
     sound_9.play(music_9, 1, 1, 0, 0, 1);
    break;
    case R.id.button14:
     nub_View.setText(values_s+"0");
     values_s = values_s+"0";
     sound_0.play(music_0, 1, 1, 0, 0, 1);
    break;
    
    }
  }
 };
 public OnClickListener fu_hao = new OnClickListener() {
  public void onClick(View v) {
    Button btn=(Button)v;
    switch (btn.getId()) {
    case R.id.button4:
     sum_v = values_s;
     nub_View.setText(values_s+"+");
     values_s = "";
     fuhao = 1;
     sound_add.play(music_add, 1, 1, 0, 0, 1);
     break;
    case R.id.button8:
     sum_v = values_s;
     nub_View.setText(values_s+"-");     
     values_s = "";
     fuhao = 2;
     sound_jian.play(music_jian, 1, 1, 0, 0, 1);
     break; 
    case R.id.button12:
     sum_v = values_s;
     nub_View.setText(values_s+"×");      
     values_s = "";
     fuhao = 3;
     sound_chen.play(music_chen, 1, 1, 0, 0, 1);
     break; 
    case R.id.button13:
     sum_v = values_s;
     nub_View.setText(values_s+"."); 
     values_s = values_s+".";
     break; 
    case R.id.button16:
     sum_v = values_s;
     nub_View.setText(values_s+"÷");     
     values_s = "";
     fuhao = 4;
     sound_chu.play(music_chu, 1, 1, 0, 0, 1);
     break;
    case R.id.button19:
     values_s = "";
     sum_v = "";
     str = "";
     nub_View.setText("欢迎使用音效计算器");
     break;
    }
    }
   };
  public OnClickListener fu_equ = new OnClickListener() {

@Override
   public void onClick(View arg0) {
    double a= Double.parseDouble(values_s);
    switch (fuhao) {
     case 1:
      double b=Double.parseDouble(sum_v);
      str=String.valueOf(a+b);
      break;
     case 2:
      double b2=Double.parseDouble(sum_v);
      str=String.valueOf(b2-a);
      break; 
     case 3:
      double b3=Double.parseDouble(sum_v);
      str=String.valueOf(a*b3);
      break;
     case 4:
      double b4=Double.parseDouble(sum_v);
      str=String.valueOf(b4/a);
      break;
     case 0:
      break;
    }
    sound_equ.play(music_equ, 1, 1, 0, 0, 1);
    nub_View.setText(str);
   }
   
  };
  public OnClickListener about_next = new OnClickListener() {
   @Override
   public void onClick(View v) {
    Intent about_page = new Intent();
    about_page.setClass(MainActivity.this, about.class);
             MainActivity.this.startActivity(about_page);
   }
   
  };
  public OnClickListener help_next = new OnClickListener() {
   @Override
   public void onClick(View v) {
    Intent help_page = new Intent();
    help_page.setClass(MainActivity.this, help.class);
             startActivity(help_page);
   }
   
  };
 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater().inflate(R.menu.main, menu);
  return true;
 }

}

android音效计算器相关推荐

  1. android简易计算器

    android简易计算器 说明:完成简易版计算器,能够实现基本的加.减.乘.除运算 图示: 布局文件 <?xml version="1.0" encoding="u ...

  2. Android简单计算器实现

    Android简单计算器实现 前言 最近刚开始学习安卓,只是简单的看到布局那块,就开始上手写了,从布局那里就开始各种乱,还到处拖按钮,一开始的第一版只能实现两个数的运算,比较简单,就是简单的上了个手, ...

  3. android 字符串转小数点,Android实现计算器(计算表达式/计算小数点以及括号)...

    本文实例为大家分享了Android实现计算器的具体代码,供大家参考,具体内容如下 布局代码: xmlns:app="http://schemas.android.com/apk/res-au ...

  4. Android个人所得税计算器

    本人所做的android个人所得税计算器程序. 先贴效果图: 1.layout布局主要使用TableLayout,代码如下 <?xml version="1.0" encod ...

  5. android复杂计算器代码,android简单计算器代码

    <android简单计算器代码>由会员分享,可在线阅读,更多相关<android简单计算器代码(9页珍藏版)>请在人人文库网上搜索. 1.package class Calcu ...

  6. android实现计算器功能吗,利用Android实现一个简单的计算器功能

    利用Android实现一个简单的计算器功能 发布时间:2020-11-20 16:25:01 来源:亿速云 阅读:90 作者:Leah 今天就跟大家聊聊有关利用Android实现一个简单的计算器功能, ...

  7. android开发计算器微积分,不到1M的良心之作!连微积分都能算的计算器APP_TOM科技...

    [PConline 应用]计算器可谓是被手机取代的一大电子产品了,不过手机上的APP是否真的有传统的计算器好用?也并不一定.一来,手机上的计算器APP功能普遍偏弱,特别是手机ROM自带的计算器:二来, ...

  8. android 开源计算器,开源Windows 10计算器应用迎来Web/Android/iOS移植版

    开源的跨平台特性,使得基于 UWP 代码的 Windows 10 计算器应用可以在非 Windows 平台上运行. Uno 在一篇博客文章中表示:Windows Calculator 完全使用标准的 ...

  9. android简易计算器的实现

    最近接触了android开发就试着写了一个计算器的小程序: 在xml文件中的布局代码如下: 1 <?xml version="1.0" encoding="utf- ...

最新文章

  1. 华为数据中心服务器数量,IDC 与华为联合发布《全闪存数据中心白皮书》,目前已有多个应用...
  2. iOS应用性能调优的25个建议和技巧【转】
  3. staruml无法打开mdj文件_StarUML使用说明
  4. MySQL必知必会——了解SQL/SQL简介/使用MySQL
  5. bzoj 1801: [Ahoi2009]chess 中国象棋【dp】
  6. 关于豆瓣电台收费的思考
  7. python定义栈_Python栈实现
  8. 微软官方解读 Win11 操作系统
  9. 新装WIN7 UPDATE 无法更新
  10. C语言 —— 回调函数
  11. pmp知识点(11)-项目风险管理
  12. BiSET: Bi-directional Selective Encoding with Template for Abstractive Summarization翻译
  13. rtl高效定位问题的方法——verilog加打印
  14. 【codevs1422】河城荷取 二分+dinic
  15. matlab和Excel的交互 非xlsread和xlswrite(1-Excel基础)
  16. LINQ编程之LINQ to SQL
  17. 串口通信与网口通信简介
  18. 自动控制原理——线性系统的根轨迹分析法
  19. mysql 存储过程 循环拼接字符串
  20. 开源工程ffdshow

热门文章

  1. c语言vc2010,vc++ 2010下载|vc2010 中文旗舰版-520下载站
  2. ABAP 出库单打印
  3. Proteus8.9 VSM Studio GCC编译器仿真STM32F407ZGT6系列012_lcd1602一线屏
  4. 怎么区分有限合伙人和普通合伙人
  5. ubuntu关机重启等待90秒问题解决
  6. Linux串口驱动程序(4)-数据发送
  7. CSharp(C#)语言_第四章(类的深入理解)
  8. TREE.JS纹理贴图
  9. 买对的不买贵的 慧眼识别宇瞻DDR真假内存
  10. linux编辑器 line,Linux 编辑器(vi、emacs、grep、gawk、sed等) zz