当前位置: 首页 > article >正文

Androidstudio点击按钮播放声音

以下内容由AI生成,道理一样。

在Android Studio中实现点击按钮播放声音,大致步骤如下:
 
首先,将音频文件(如 .mp3 、 .wav 等格式)放入项目的 res/raw 文件夹下。如果没有 raw 文件夹,需要在 res 目录下创建。
 
然后,在布局文件(如 activity_main.xml )中添加一个按钮,示例代码如下:

<Button
    android:id="@+id/playButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="播放声音"/>

在对应的Java(或Kotlin)活动文件(如 MainActivity.java )中,首先要导入相关的包:

import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;

然后,在活动类中定义 MediaPlayer 对象,在 onCreate 方法中获取按钮实例,并设置点击监听器,代码如下:

public class MainActivity extends AppCompatActivity {
    private MediaPlayer mediaPlayer;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button playButton = findViewById(R.id.playButton);
        mediaPlayer = MediaPlayer.create(this, R.raw.your_audio_file_name);
        playButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                mediaPlayer.start();
            }
        });
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        if (mediaPlayer!= null) {
            mediaPlayer.release();
        }
    }
}

注意:
 
- 上述代码中的 your_audio_file_name 要替换为实际放入 raw 文件夹中的音频文件名(不包括文件扩展名)。
- 记得在合适的时候释放 MediaPlayer 资源,如在 onDestroy 方法中,避免资源泄漏。


http://www.kler.cn/a/447470.html

相关文章:

  • 代码加入SFTP JAVA ---(小白篇3)
  • Leaflet的zoom层级-天地图层级之间的关系
  • Oracle 中间件 Webcenter Portal服务器环境搭建
  • 如何缩放组件
  • react 项目打包二级目 使用BrowserRouter 解决页面刷新404 找不到路由
  • 大数据面试题--企业面试真题
  • 如何优雅的关闭GoWeb服务器
  • RK3588 , mpp硬编码yuv, 保存MP4视频文件.
  • TDesign:NavBar 导航栏
  • 未来趋势系列 篇五:自主可控科技题材解析和股票梳理
  • SpringCloud微服务开发(六)ElasticSearch/RESTful风格
  • 如何在Qt中应用html美化控件
  • 进入 Cosmic Red:第十周游戏指南
  • Linux中的mv命令深入分析
  • RAG开发中,如何用Milvus 2.5 BM25算法实现混合搜索
  • 如何深入学习JVM底层原理?
  • 火山引擎声音复刻API-2.0
  • 【从零开始入门unity游戏开发之——C#篇18】C#面向对象的封装——构造函数、`this()`构造函数链、析构函数(方法)
  • 如果模块请求http改为了https,测试方案应该如何制定,修改
  • 云手机:小红书矩阵搭建方案
  • 电商新品发布自动化:RPA 确保信息一致性与及时性【rap.top】
  • WPF制作图片闪烁的自定义控件
  • 科研篇——《吕达仁:科研真问题从何而来》
  • volatility2工具的使用vol2工具篇
  • 青少年编程与数学 02-004 Go语言Web编程 09课题、访问数据库
  • define ATL_NO_VTABLE __declspec(novtable)