从开始接触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. Angular 富文本编辑之路的探索
  2. 查看进程运行状态的环境变量
  3. testng入门_单元测试
  4. 滴滴算法大赛算法解决过程 - 机器学习
  5. 3周第4次课 df、du命令 fdisk磁盘分区
  6. java中不用impore导入的_java import机制(不用IDE)
  7. WinForm C#全局错误捕捉处理【整理】
  8. 说三件切身利益的大事!一定要看 减少损失
  9. centos 7 lvm用法
  10. cmd 命令行中乱码问题解决
  11. asp .net 多文件上传(二)
  12. springmvc配置不拦截静态资源
  13. 认证失败,严重错误:无法连接到服务器
  14. linux下的pstack和gstack命令
  15. Java项目:汽车配件销售管理系统(java+SpringBoot+layui+html+maven+mysql)
  16. php发邮件 环境,PHP使用Pear发送邮件(Windows环境)
  17. 数组some和every的区别
  18. 【计算机管理——运筹学】——预测决策
  19. 1069 微博转发抽奖 (20分)
  20. 【如何实现RS232/485串口转CANbus总线以及介绍使用说明】

热门文章

  1. 你的26周岁,可还好?
  2. IntelliJ IDEA 常见图标
  3. 供水管网监测系统,供水管网压力监测系统
  4. css iframe 滚动,css – 如何设置iframe的滚动条样式?
  5. oracle的hints,Oracle使用hints的调整机制实操
  6. Java实现英文段落分句_java英文段落拆分成句(Split an article into sentences)
  7. Python 操作windows的Wlan
  8. 联想电脑连iPhone手机热点
  9. 如何从PPT中提取视频、动画、音频、解说等
  10. 论文复现-Half Instance Normalization Network