Android开发多媒体应用之SoundPool的使用的代码
内容过程中,把写内容过程中比较好的内容段记录起来,下面的内容是关于Android开发多媒体应用之SoundPool的使用的内容,希望对各位也有用途。
public class MainActivity extends Activity {
private Button button1;
private Button button2;
private Button button3;
private Button button4;
private Button button5;
private SoundPool soundPool;
private Map<Integer, Integer> soundMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1=(Button)findViewById(R.id.button1);
button2=(Button)findViewById(R.id.button2);
button3=(Button)findViewById(R.id.button3);
button4=(Button)findViewById(R.id.button4);
button5=(Button)findViewById(R.id.button5);
soundPool=new SoundPool(5,AudioManager.STREAM_MUSIC,0);
soundMap=new HashMap<Integer, Integer>();
soundMap.put(1, soundPool.load(MainActivity.this, R.raw.ir_begin, 1));
soundMap.put(2, soundPool.load(MainActivity.this, R.raw.ir_end, 1));
soundMap.put(3, soundPool.load(MainActivity.this, R.raw.ir_inter, 1));
soundMap.put(4, soundPool.load(MainActivity.this, R.raw.tada, 1));
soundMap.put(5, soundPool.load(MainActivity.this, R.raw.zhong, 1));
button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
soundPool.play(soundMap.get(1), 1, 1, 0, 0, 1);
}
});
button2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
soundPool.play(soundMap.get(2), 1, 1, 0, 0, 1);
}
});
button3.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
soundPool.play(soundMap.get(3), 1, 1, 0, 0, 1);
}
});
button4.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
soundPool.play(soundMap.get(4), 1, 1, 0, 0, 1);
}
});
button5.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
soundPool.play(soundMap.get(5), 1, 1, 0, 0, 1);
}
});
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
soundPool.play(soundMap.get(5), 1, 1, 0, 0, 1);
return super.onKeyDown(keyCode, event);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
Android开发多媒体应用之SoundPool的使用的代码的更多相关文章
- 《ArcGIS Runtime SDK for Android开发笔记》——(7)、示例代码arcgis-runtime-samples-android的使用
1.前言 学习ArcGIS Runtime SDK开发,其实最推荐的学习方式是直接看官方的教程.示例代码和帮助文档,因为官方的示例一般来说都是目前技术最新,也是最详尽的.对于ArcGIS Runtim ...
- Android开发 多媒体提取器MediaExtractor详解_入门篇
前言 MediaExtractor字面意思是多媒体提取器,它在Android的音视频开发里主要负责提取视频或者音频中的信息和数据流(例如将视频文件,剥离出音频与视频).本章博客将讲解一些入门简单的东西 ...
- android开发(44) 使用了 SoundPool 播放提示音
SoundPool 一个声音播放的辅助类,从名字可以看出,它具有 “池”的能力,它先加载声音文件到内存,以支持多次播放声音文件. 特点 SoundPool适合 短小的 声音文件 SoundPool适合 ...
- Android开发 多媒体提取器MediaExtractor详解_将一个视频文件分离视频与音频
前言 此篇博客讲解MediaExtractor将一个视频文件分离视频与音频,如果你对MediaExtractor还没有一个笼统的概念建议先了解我的另一篇入门博客:https://www.cnblogs ...
- Android开发:APK的反编译(获取代码和资源文件)
一.反编译工具: 1.APKTool: APKTool是由GOOGLE提供的APK编译工具,能够完成反编译及回编译apk的工作.同时,它也有着安装反编译系统apk所需要的framework-res框架 ...
- Android开发之开源框架OKHTTP的Get请求代码,得到json字符串方法
<span style="white-space:pre"> </span><pre name="code" class=&q ...
- android开发 eclipse alt+”/”自动提示失效
http://blog.unvs.cn/archives/android-eclipse-alt.html 按照其中的第一条+第二条 处理 注意:abcd要替换为 abcdefghijklmnopqr ...
- Android开发效率的小技巧
提高eclipse使用效率(二) 提高Android开发效率的小技巧 XML文件的代码提示 adt中也有xml文件的代码提示,为了让提示来的更加猛烈,我们还要设置一下 打开eclipse - Wi ...
- Android开发代码规范总结
本篇开始总结Android开发中的一些注意事项,提高代码质量(仅供参考): 1. Activity间的数据通信,对于数据量比较大的,避免使用 Intent + Parcelable 的方式,可以考虑 ...
随机推荐
- Pandas -- Merge,join and concatenate
Merge, join, and concatenate pandas provides various facilities for easily combining together Series ...
- CodeForces 146E Lucky Subsequence(组合数+DP)
题目描述 Petya loves lucky numbers very much. Everybody knows that lucky numbers are positive integers w ...
- BZOJ 1878 hh的项链(简单莫队)
Description HH有一串由各种漂亮的贝壳组成的项链.HH相信不同的贝壳会带来好运,所以每次散步 完后,他都会随意取出一 段贝壳,思考它们所表达的含义.HH不断地收集新的贝壳,因此他的项链变得 ...
- Delphi Cookie获取及使用
以下方法为网上搜集整理,留做备份,随时更新 一:通过URL获取 CanGetIECookie(URL,g_cookie); function CanGetIECookie(const URL: ...
- Android-bindService远程服务(Aidl)-初步
之前上一篇讲解到本地服务,本地服务只能在自身APP中Activity访问Service,调用Service里面到方法等操作 如果想A应用访问B应用里面的方法,属于跨进程调用,如果Android不特供这 ...
- 【C#】事件
前言:CLR事件模式建立在委托的基础上,委托说调用回调方法的一种类型安全的方式. 我个人觉得事件本质就是委托,所以把委托弄清楚,只要知道事件基本语法就会使用了(如果说到线程安全,我个人觉得这个应该和线 ...
- ajax 解析
1.通过适当的Ajax应用达到更好的用户体验; 2.把以前的一些服务器负担的工作转嫁到客户端,利于客户端闲置的处理能力来处理,减轻服务器和带宽的负担,从而达到节约ISP的空间及带宽租用成本的目的. 二 ...
- [Erlang11] 那些经历过的Erlang小坑11-20
11.每次重装系统时都会重新安装Erlang,Ubuntu安装sh秒杀一切. https://gist.github.com/zhongwencool/11174620 12. Erlang Shel ...
- Cordova deploy on Android
网上找了几篇Phonegap在安卓上的部署,版本都比较老了,不过还是部署成功了, 写篇博客以做纪录. 1.先下载IDE:戳 2.下载Phonegap:戳 3.启动ADT,新建普通Android App ...
- WPF成长之路------帧动画(1)
最近公司的一个项目因为是WPF的,而自己已经很长一段时间没有接触过WPF了,再加上之前没有做过wpf的动画效果,因此在学习的过程中也顺便记录一下,说不定以后还会用上,同时也算是总结一下吧!刚开始写博客 ...