中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Android中使用SoundPool播放音頻

發布時間:2021-03-24 17:39:35 來源:億速云 閱讀:193 作者:Leah 欄目:移動開發

怎么在Android中使用SoundPool播放音頻?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

activity_picture.xml頁面:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:app="http://schemas.android.com/apk/res-auto"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical"
 tools:context=".PictureActivity">
 
 <ImageButton
 android:id="@+id/ibCogVideo"
 android:layout_width="100dp"
 android:layout_height="100dp"
 android:src="@mipmap/ic_launcher" />
 <ImageView
 android:id="@+id/ivCogPicture"
 android:layout_width="300dp"
 android:layout_height="300dp"
 android:layout_marginTop="100dp"
 android:src="@mipmap/ic_launcher" />
 
</LinearLayout>

PictureActivity.java頁面:

package com.example.two;
 
import android.media.AudioManager;
import android.media.SoundPool;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageButton;
import android.widget.ImageView;
 
import java.util.HashMap;
 
public class PictureActivity extends AppCompatActivity implements View.OnClickListener {
 
 private ImageButton ibCogVideo;
 private ImageView ivCogPicture;
 SoundPool mSoundPool; //一般用來播放短音頻
 HashMap<Integer,Integer> map=new HashMap<>(); //創建集合存放數據
 
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_picture);
 
 initViews();
 bindViews();
 initDatas();
 }
 
 /*初始化數據*/
 private void initDatas() {
 mSoundPool=new SoundPool(3, AudioManager.STREAM_MUSIC,0); //創建音頻對象,參數為(可容納音頻個數,聲音類型,音頻品質默認為0)
 map.put(1,mSoundPool.load(this,R.raw.abc,100)); //設置第一個音頻
 }
 
 /*綁定點擊事件*/
 private void bindViews() {
 ibCogVideo.setOnClickListener(this);
 }
 
 /*初始化控件*/
 private void initViews() {
 ibCogVideo=findViewById(R.id.ibCogVideo);
 ivCogPicture=findViewById(R.id.ivCogPicture);
 }
 
 /*點擊事件*/
 @Override
 public void onClick(View v) {
 mSoundPool.play(map.get(1),1,1,100,0,1); //參數為(要播放的音頻,左聲道音量,右聲道音量,音頻優先級,循環次數,速率)
 }
}

另外,音頻文件我放到了項目中,及res中的raw文件。貌似音頻文件可以放入raw或者assets中,不同是raw一般放小型素材并且在代碼中可以直接使用R.raw.xxx調用,而assets不可以。

AndroidStudio添加raw的方法:

怎么在Android中使用SoundPool播放音頻

怎么在Android中使用SoundPool播放音頻

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

荔浦县| 中超| 社旗县| 乌恰县| 申扎县| 定安县| 会泽县| 泗阳县| 托里县| 民县| 新龙县| 新郑市| 壤塘县| 大关县| 青州市| 来凤县| 汤阴县| 鹤山市| 来宾市| 松潘县| 荆门市| 南澳县| 太康县| 蓬莱市| 峡江县| 古蔺县| 集安市| 酒泉市| 西峡县| 通渭县| 金乡县| 新干县| 江口县| 阿拉善左旗| 宜君县| 胶州市| 石林| 明溪县| 镇原县| 开鲁县| 乌兰浩特市|