Android利用SoundPool实现音乐池

 更新时间:2021年11月14日 15:46:46   作者:安之若素i  
这篇文章主要为大家详细介绍了Android利用SoundPool实现音乐池,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了Android利用SoundPool实现音乐池的具体代码,供大家参考,具体内容如下

运行效果图如下:

布局文件(activity_sound_pool.xml)

<?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:id="@+id/activity_sound_pool"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:orientation="vertical"
    tools:context="com.example.g150825_android26.SoundPoolActivity">

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="音效鸡"
        android:onClick="playKFC"
        />
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="音效TWO"
        android:onClick="playTWO"
        />
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="音效Three"
        android:onClick="playThree"
        />
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="音效Four"
        android:onClick="playFour"
        />
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="音效狗"
        android:onClick="playDog"
        />

</LinearLayout>

Java代码

package com.example.g150825_android26;

import android.app.AlarmManager;
import android.media.AudioManager;
import android.media.SoundPool;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;

public class SoundPoolActivity extends AppCompatActivity {

    private SoundPool soundPool;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_sound_pool);
        soundPool = new SoundPool(4, AudioManager.STREAM_MUSIC,0);

        soundPool.setOnLoadCompleteListener(new SoundPool.OnLoadCompleteListener() {
            @Override
            public void onLoadComplete(SoundPool soundPool, int i, int i1) {
                soundPool.play(i,1,1,1,-1,1);
            }
        });
    }
    public void playKFC(View view){
        soundPool.load(this,R.raw.rooster,1);
    }
    public void playTWO(View view){
        soundPool.load(this,R.raw.chimp,1);

    }
    public void playThree(View view){
        soundPool.load(this,R.raw.crickets,1);
    }
    public void playFour(View view){
        soundPool.load(this,R.raw.roar,1);
    }
    public void playDog(View view){
        soundPool.load(this,R.raw.dogbark,1);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        if (soundPool!=null){
            soundPool.release();
            soundPool=null;
        }
    }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Android中检查、监听电量和充电状态的方法

    Android中检查、监听电量和充电状态的方法

    这篇文章主要介绍了Android中检查、监听电量和充电状态的方法,如判断当前充电状态、监听充电状态的改变、判断当前剩余电量等,需要的朋友可以参考下
    2014-06-06
  • Android开发中的错误及解决办法总结

    Android开发中的错误及解决办法总结

    本文属于个人平时项目开发过程遇到的一些问题,记录下来并总结解决方案,希望能帮到大家解决问题,需要的朋友可以参考下
    2022-02-02
  • Android OpenGLES如何给相机添加滤镜详解

    Android OpenGLES如何给相机添加滤镜详解

    这篇文章主要给大家介绍了关于Android OpenGLES如何给相机添加滤镜的相关资料,文中通过示例代码介绍的非常详细,对各位Android开发者们具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • Android RecyclerView打造悬浮效果的实现代码

    Android RecyclerView打造悬浮效果的实现代码

    本篇文章主要介绍了Android RecyclerView打造悬浮效果的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • Android控件Spinner的使用方法(1)

    Android控件Spinner的使用方法(1)

    这篇文章主要为大家详细介绍了Android控件Spinner的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • Flutter数据库的使用方法

    Flutter数据库的使用方法

    这篇文章主要介绍了Flutter数据库的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • Android 实现自定义圆形listview功能的实例代码

    Android 实现自定义圆形listview功能的实例代码

    这篇文章主要介绍了Android 实现自定义圆形listview功能的实例代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • Android实现通话最小化悬浮框效果

    Android实现通话最小化悬浮框效果

    本片内容给大家介绍了Android音视频通话过程中最小化成悬浮框的实现的方法以及代码写法。
    2017-11-11
  • Android日期选择控件使用详解

    Android日期选择控件使用详解

    这篇文章主要为大家详细介绍了Android日期选择控件的使用,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-08-08
  • Android实现京东App分类页面效果

    Android实现京东App分类页面效果

    这篇文章主要为大家详细介绍了Android实现京东App分类页面效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02

最新评论