2 sachinks SachinKS 于 2013.01.06 14:39 提问

自编mediaplayer出现问题

应用关闭时出现错误,下面的代码是按钮播放声音的

import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.app.Activity;

public class Click extends Activity
 {
  MediaPlayer mp1;

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

      mp1 = MediaPlayer.create(this, R.raw.sound1);
      final Button button1 = (Button) findViewById(R.id.button1);
      button1.setOnClickListener((OnClickListener) this);
    }

   public void onClick(View v) 
     {
      switch(v.getId()) 
       {
        case R.id.button1:
        mp1.start();
        break;
       }
     } 
    }

2个回答

lanhailvcao
lanhailvcao   2013.01.06 16:32
已采纳

问题出在你没有实现OnClickListener,还有没将Click类映射到OnClickListener中。
更改:

类声明:

public class Click extends Activity implements OnClickListener

然后修改这句

button1.setOnClickListener((OnClickListener) this);

改为

button1.setOnClickListener(this);
zlQQhs
zlQQhs   2013.02.26 01:22

我的习惯是在标签中添加android:onclick="startMedia"(引号中是方法名)
(这样也不用findViewById和setOnClickListener)
public void startMedia(View v){
mp1.start();
}

你若想用取控件的方式,可以用楼上的做法

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!