【问题标题】:How do I make my button play a sound?如何让我的按钮播放声音?
【发布时间】:2014-09-04 09:08:44
【问题描述】:

我知道这已经被问过很多次了,但是如何让我的按钮在按下时播放声音?

这是我的按钮代码:

 <Button
    android:id="@+id/c1"
    android:layout_width="250dp"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="45dp"
    android:background="@drawable/button_selector" />

这是我的 MainActivity.java:

package com.example.appname;

import android.app.Activity;
import android.os.Bundle;

public class MainActivity extends Activity {
    /** Called when the activity is first created. */

    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    }
}

我必须添加什么才能让我的按钮播放声音?如果有帮助,我正在使用 Eclipse。

编辑

我真的不知道我在做什么,所以如果你能告诉我在我的代码中添加什么会很棒。

【问题讨论】:

    标签: java android eclipse button audio


    【解决方案1】:

    您可以使用 OnClickListener
    Here 是开发人员部分,详细介绍了如何操作。

    将 OnClickListener 分配给按钮后,您需要实现 onClick 方法
    Here 是关于按钮的部分,此处的代码将帮助您入门。

    播放声音,我推荐MediaPlayer你可以在onClick方法中设置你的MediaPlayer开始(播放)。

    【讨论】:

      【解决方案2】:

      首先你必须了解android中视图产生的事件,在你的情况下按钮点击事件,你必须使用OnClickListener

      你的代码看起来像

      public class MainActivity extends Activity implements
          OnClickListener{
      /** Called when the activity is first created. */
      
          @Override
          public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
      
          Button btnPlaySound = (Button) findViewById(R.id.c1);  
          btnPlaySound.setOnclickListener(this);
      
          }
      
          @Override
          public void onClick(View v) {
      
               switch (v.getId()) {
                case R.id.view_id:
                   break;
                default:
                  break;
               }
         }
      
      }
      

      【讨论】:

      • 使用 Activity 作为 OnClickListener 将增加代码的复杂性和可读性,只要您获得 2 个按钮(即具有 2 个侦听器)
      • @ben75 虽然有两个按钮,但我更新了我的答案并设置了 onClick 监听器 om 单个按钮,它为每个按钮创建匿名类,所以我使用这种方式,我的代码将清理和清除
      猜你喜欢
      • 1970-01-01
      • 2014-11-02
      • 2015-05-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-16
      • 2013-10-28
      • 1970-01-01
      相关资源
      最近更新 更多