我正在尝试播放不同的声音,当按下不同的按钮时,请滚动到最后,因为声明很大,我希望媒体播放器在播放完成后销毁文件,所以当我点击另一个按钮时,一个全新的文件是创建并且它不重叠播放,我正在使用 oncompletionlistner 但它不起作用,我是否将它放在代码中的错误位置?
这是代码:(请跳到按钮)
package com.example.buttonsdemo;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.os.Bundle;
import android.app.Activity;
import android.support.v4.widget.SimpleCursorAdapter.ViewBinder;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener{
//Creating Sound arrays
//int i=0;
MediaPlayer mediaplayer = new MediaPlayer();
Button button[] = new Button [120];
int viewer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//first button
final Button button_0 = (Button) findViewById(R.id.akali);
button_0.setOnClickListener(this);
//Second button
final Button button_1 = (Button) findViewById(R.id.alistar);
button_1.setOnClickListener(this);
final Button button_2 =(Button) findViewById(R.id.ahri);
button_2.setOnClickListener(this);
final Button button_3 =(Button) findViewById(R.id.amumu);
button_3.setOnClickListener(this);
final Button button_4 =(Button) findViewById(R.id.anivia);
button_4.setOnClickListener(this);
final Button button_5 =(Button) findViewById(R.id.annie);
button_5.setOnClickListener(this);
final Button button_6 =(Button) findViewById(R.id.ashe);
button_6.setOnClickListener(this);
final Button button_7 =(Button) findViewById(R.id.blitz);
button_7.setOnClickListener(this);
final Button button_8 =(Button) findViewById(R.id.thresh);
button_8.setOnClickListener(this);
final Button button_9 =(Button) findViewById(R.id.brand);
button_9.setOnClickListener(this);
final Button button_10 =(Button) findViewById(R.id.Caitlyn);
button_10.setOnClickListener(this);
final Button button_11 =(Button) findViewById(R.id.Cass);
button_11.setOnClickListener(this);
final Button button_12 =(Button) findViewById(R.id.chogath);
button_12.setOnClickListener(this);
final Button button_13 =(Button) findViewById(R.id.Corki);
button_13.setOnClickListener(this);
final Button button_14 =(Button) findViewById(R.id.darius);
button_14.setOnClickListener(this);
final Button button_15 =(Button) findViewById(R.id.diana);
button_15.setOnClickListener(this);
final Button button_16 =(Button) findViewById(R.id.draven);
button_16.setOnClickListener(this);
final Button button_17 =(Button) findViewById(R.id.elise);
button_17.setOnClickListener(this);
final Button button_18 =(Button) findViewById(R.id.eve);
button_18.setOnClickListener(this);
final Button button_19 =(Button) findViewById(R.id.ezrael);
button_19.setOnClickListener(this);
final Button button_20 =(Button) findViewById(R.id.fiddle);
button_20.setOnClickListener(this);
final Button button_21 =(Button) findViewById(R.id.fiora);
button_21.setOnClickListener(this);
final Button button_22 =(Button) findViewById(R.id.fizz);
button_22.setOnClickListener(this);
final Button button_23 =(Button) findViewById(R.id.galio);
button_23.setOnClickListener(this);
final Button button_24 =(Button) findViewById(R.id.garen);
button_24.setOnClickListener(this);
final Button button_25 =(Button) findViewById(R.id.gp);
button_25.setOnClickListener(this);
final Button button_26 =(Button) findViewById(R.id.gragas);
button_26.setOnClickListener(this);
final Button button_27 =(Button) findViewById(R.id.graves);
button_27.setOnClickListener(this);
final Button button_50 =(Button) findViewById(R.id.maokai);
button_50.setOnClickListener(this);
final Button button_51 =(Button) findViewById(R.id.mf);
button_51.setOnClickListener(this);
final Button button_52 =(Button) findViewById(R.id.mordekaiser);
button_52.setOnClickListener(this);
final Button button_53 =(Button) findViewById(R.id.morgana);
button_53.setOnClickListener(this);
final Button button_54 =(Button) findViewById(R.id.mundo);
button_54.setOnClickListener(this);
final Button button_55 =(Button) findViewById(R.id.nami);
button_55.setOnClickListener(this);
final Button button_56 =(Button) findViewById(R.id.nasus);
button_56.setOnClickListener(this);
final Button button_57 =(Button) findViewById(R.id.nautilus);
button_57.setOnClickListener(this);
final Button button_58 =(Button) findViewById(R.id.nidalee);
button_58.setOnClickListener(this);
final Button button_59 =(Button) findViewById(R.id.nocturne);
button_59.setOnClickListener(this);
final Button button_60 =(Button) findViewById(R.id.nunu);
button_60.setOnClickListener(this);
final Button button_61 =(Button) findViewById(R.id.olaf);
button_61.setOnClickListener(this);
final Button button_62 =(Button) findViewById(R.id.orianna);
button_62.setOnClickListener(this);
final Button button_63 =(Button) findViewById(R.id.pantheon);
button_63.setOnClickListener(this);
final Button button_64 =(Button) findViewById(R.id.poppy);
button_64.setOnClickListener(this);
final Button button_65 =(Button) findViewById(R.id.quinn);
button_65.setOnClickListener(this);
final Button button_66 =(Button) findViewById(R.id.rammus);
button_66.setOnClickListener(this);
final Button button_67 =(Button) findViewById(R.id.renekton);
button_67.setOnClickListener(this);
final Button button_68 =(Button) findViewById(R.id.rengar);
button_68.setOnClickListener(this);
final Button button_69 =(Button) findViewById(R.id.riven);
button_69.setOnClickListener(this);
final Button button_70 =(Button) findViewById(R.id.rumble);
button_70.setOnClickListener(this);
final Button button_71 =(Button) findViewById(R.id.ryze);
button_71.setOnClickListener(this);
final Button button_72 =(Button) findViewById(R.id.sejuani);
button_72.setOnClickListener(this);
final Button button_73 =(Button) findViewById(R.id.shaco);
button_73.setOnClickListener(this);
final Button button_74 =(Button) findViewById(R.id.shen);
button_74.setOnClickListener(this);
final Button button_75 =(Button) findViewById(R.id.shyvana);
button_75.setOnClickListener(this);
final Button button_76 =(Button) findViewById(R.id.singed);
button_76.setOnClickListener(this);
final Button button_77 =(Button) findViewById(R.id.sion);
button_77.setOnClickListener(this);
final Button button_78 =(Button) findViewById(R.id.sivir);
button_78.setOnClickListener(this);
final Button button_79 =(Button) findViewById(R.id.skarner);
button_79.setOnClickListener(this);
final Button button_80 =(Button) findViewById(R.id.sona);
button_80.setOnClickListener(this);
final Button button_81 =(Button) findViewById(R.id.soraka);
button_81.setOnClickListener(this);
final Button button_82 =(Button) findViewById(R.id.swain);
button_82.setOnClickListener(this);
final Button button_83 =(Button) findViewById(R.id.syndra);
button_83.setOnClickListener(this);
final Button button_84 =(Button) findViewById(R.id.talon);
button_84.setOnClickListener(this);
final Button button_85 =(Button) findViewById(R.id.taric);
button_85.setOnClickListener(this);
final Button button_86 =(Button) findViewById(R.id.teemo);
button_86.setOnClickListener(this);
final Button button_87 =(Button) findViewById(R.id.tf);
button_87.setOnClickListener(this);
final Button button_88 =(Button) findViewById(R.id.tristana);
button_88.setOnClickListener(this);
final Button button_89 =(Button) findViewById(R.id.trundle);
button_89.setOnClickListener(this);
final Button button_90 =(Button) findViewById(R.id.tryndamere);
button_90.setOnClickListener(this);
final Button button_91 =(Button) findViewById(R.id.twitch);
button_91.setOnClickListener(this);
final Button button_92 =(Button) findViewById(R.id.udyr);
button_92.setOnClickListener(this);
final Button button_93 =(Button) findViewById(R.id.urgot);
button_93.setOnClickListener(this);
final Button button_94 =(Button) findViewById(R.id.varus);
button_94.setOnClickListener(this);
final Button button_95 =(Button) findViewById(R.id.vayne);
button_95.setOnClickListener(this);
final Button button_96 =(Button) findViewById(R.id.veigar);
button_96.setOnClickListener(this);
final Button button_97 =(Button) findViewById(R.id.viktor);
button_97.setOnClickListener(this);
final Button button_98 =(Button) findViewById(R.id.vladimir);
button_98.setOnClickListener(this);
final Button button_99 =(Button) findViewById(R.id.volibear);
button_99.setOnClickListener(this);
final Button button_100 =(Button) findViewById(R.id.warwick);
button_100.setOnClickListener(this);
final Button button_101 =(Button) findViewById(R.id.wukong);
button_101.setOnClickListener(this);
final Button button_102 =(Button) findViewById(R.id.xerath);
button_102.setOnClickListener(this);
final Button button_103 =(Button) findViewById(R.id.xinzhao);
button_103.setOnClickListener(this);
final Button button_104 =(Button) findViewById(R.id.yi);
button_104.setOnClickListener(this);
final Button button_105 =(Button) findViewById(R.id.yorick);
button_105.setOnClickListener(this);
final Button button_106 =(Button) findViewById(R.id.zed);
button_106.setOnClickListener(this);
final Button button_107 =(Button) findViewById(R.id.ziggs);
button_107.setOnClickListener(this);
final Button button_108 =(Button) findViewById(R.id.zilean);
button_108.setOnClickListener(this);
final Button button_109 =(Button) findViewById(R.id.zyra);
button_109.setOnClickListener(this);
final Button button_110 =(Button) findViewById(R.id.vi);
button_110.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId())
{
case R.id.akali:
mediaplayer = MediaPlayer.create(this, R.raw.akali);
viewer = R.layout.alistar;
break;
case R.id.alistar:
mediaplayer= MediaPlayer.create(this, R.raw.alistar);
break;
case R.id.ahri:
mediaplayer= MediaPlayer.create(this,R.raw.ahri);
break;
case R.id.amumu:
mediaplayer= MediaPlayer.create(this,R.raw.amumu);
break;
case R.id.anivia:
mediaplayer= MediaPlayer.create(this,R.raw.anivia);
break;
case R.id.annie:
mediaplayer= MediaPlayer.create(this,R.raw.annie);
break;
case R.id.ashe:
mediaplayer= MediaPlayer.create(this,R.raw.ashe);
break;
case R.id.blitz:
mediaplayer= MediaPlayer.create(this,R.raw.blitzcrank);
break;
case R.id.brand:
mediaplayer= MediaPlayer.create(this,R.raw.brand);
break;
case R.id.Caitlyn:
mediaplayer= MediaPlayer.create(this,R.raw.caitlyn);
break;
case R.id.Cass:
mediaplayer= MediaPlayer.create(this,R.raw.cassiopeia);
break;
case R.id.chogath:
mediaplayer= MediaPlayer.create(this,R.raw.chogath);
break;
case R.id.Corki:
mediaplayer= MediaPlayer.create(this,R.raw.corki);
break;
case R.id.darius:
mediaplayer= MediaPlayer.create(this,R.raw.darius);
break;
case R.id.diana:
mediaplayer= MediaPlayer.create(this,R.raw.diana);
break;
case R.id.draven:
mediaplayer= MediaPlayer.create(this,R.raw.draven);
break;
case R.id.elise:
mediaplayer= MediaPlayer.create(this,R.raw.elise);
break;
case R.id.eve:
mediaplayer= MediaPlayer.create(this,R.raw.evelynn);
break;
case R.id.ezrael:
mediaplayer= MediaPlayer.create(this,R.raw.ezreal);
break;
case R.id.fiddle:
mediaplayer= MediaPlayer.create(this,R.raw.fiddlesticks);
break;
case R.id.fiora:
mediaplayer= MediaPlayer.create(this,R.raw.fiora);
break;
case R.id.fizz:
mediaplayer= MediaPlayer.create(this,R.raw.fizz);
break;
case R.id.galio:
mediaplayer= MediaPlayer.create(this,R.raw.galio);
break;
case R.id.garen:
mediaplayer= MediaPlayer.create(this,R.raw.garen);
break;
case R.id.gp:
mediaplayer= MediaPlayer.create(this,R.raw.gangplank);
break;
case R.id.gragas:
mediaplayer= MediaPlayer.create(this,R.raw.gragas);
break;
case R.id.graves:
mediaplayer= MediaPlayer.create(this,R.raw.graves);
break;
case R.id.hecarim:
mediaplayer= MediaPlayer.create(this,R.raw.hecarim);
break;
case R.id.heimer:
mediaplayer= MediaPlayer.create(this,R.raw.heimerdinger);
break;
case R.id.thresh:
mediaplayer= MediaPlayer.create(this,R.raw.thresh);
break;
case R.id.irelia :
mediaplayer= MediaPlayer.create(this,R.raw. irielia);
break;
case R.id.janna:
mediaplayer= MediaPlayer.create(this,R.raw. janna);
break;
case R.id.jarvan :
mediaplayer= MediaPlayer.create(this,R.raw. jarvan);
break;
case R.id.jax :
mediaplayer= MediaPlayer.create(this,R.raw. jax);
break;
case R.id.jayce :
mediaplayer= MediaPlayer.create(this,R.raw.jayce );
break;
case R.id.karma :
mediaplayer= MediaPlayer.create(this,R.raw.karma );
break;
case R.id.karthus :
mediaplayer= MediaPlayer.create(this,R.raw.karthus );
break;
case R.id. kassadin:
mediaplayer= MediaPlayer.create(this,R.raw.kassadin );
break;
case R.id.katarina :
mediaplayer= MediaPlayer.create(this,R.raw. katarina);
break;
case R.id. kayle:
mediaplayer= MediaPlayer.create(this,R.raw. kayle);
break;
case R.id.kennen :
mediaplayer= MediaPlayer.create(this,R.raw. kennen);
break;
case R.id. khazix:
mediaplayer= MediaPlayer.create(this,R.raw. khazix);
break;
case R.id.kog :
mediaplayer= MediaPlayer.create(this,R.raw.kogmaw );
break;
case R.id.leblanc :
mediaplayer= MediaPlayer.create(this,R.raw. leblanc);
break;
case R.id.leesin :
mediaplayer= MediaPlayer.create(this,R.raw.leesin );
break;
case R.id. leona:
mediaplayer= MediaPlayer.create(this,R.raw. leona);
break;
case R.id. lulu:
mediaplayer= MediaPlayer.create(this,R.raw.lulu );
break;
case R.id.lux :
mediaplayer= MediaPlayer.create(this,R.raw. lux);
break;
case R.id.malphite :
mediaplayer= MediaPlayer.create(this,R.raw.malphite );
break;
case R.id. malzahar:
mediaplayer= MediaPlayer.create(this,R.raw. malzahar);
break;
case R.id.maokai :
mediaplayer= MediaPlayer.create(this,R.raw.mokai );
break;
case R.id.mf :
mediaplayer= MediaPlayer.create(this,R.raw.missfortune );
break;
case R.id. mordekaiser:
mediaplayer= MediaPlayer.create(this,R.raw. mordekaiser);
break;
case R.id.morgana :
mediaplayer= MediaPlayer.create(this,R.raw.morgana );
break;
case R.id.mundo :
mediaplayer= MediaPlayer.create(this,R.raw. drmundo);
break;
case R.id.nami :
mediaplayer= MediaPlayer.create(this,R.raw. nami);
break;
case R.id.nasus :
mediaplayer= MediaPlayer.create(this,R.raw. nasus);
break;
case R.id. nautilus:
mediaplayer= MediaPlayer.create(this,R.raw.nautilus );
break;
case R.id. nidalee:
mediaplayer= MediaPlayer.create(this,R.raw. nidalee);
break;
case R.id.nocturne :
mediaplayer= MediaPlayer.create(this,R.raw. nocturne);
break;
case R.id.nunu :
mediaplayer= MediaPlayer.create(this,R.raw. nunu);
break;
case R.id. olaf:
mediaplayer= MediaPlayer.create(this,R.raw.olaf );
break;
case R.id.orianna :
mediaplayer= MediaPlayer.create(this,R.raw. orianna);
break;
case R.id.pantheon :
mediaplayer= MediaPlayer.create(this,R.raw. pantheon);
break;
case R.id. poppy:
mediaplayer= MediaPlayer.create(this,R.raw.poppy );
break;
case R.id.quinn :
mediaplayer= MediaPlayer.create(this,R.raw.quinn );
break;
case R.id.rammus :
mediaplayer= MediaPlayer.create(this,R.raw. rammus);
break;
case R.id.renekton :
mediaplayer= MediaPlayer.create(this,R.raw. renekton);
break;
case R.id. rengar:
mediaplayer= MediaPlayer.create(this,R.raw. rengar);
break;
case R.id. riven:
mediaplayer= MediaPlayer.create(this,R.raw. riven);
break;
case R.id.rumble:
mediaplayer= MediaPlayer.create(this,R.raw.rumble );
break;
case R.id.ryze :
mediaplayer= MediaPlayer.create(this,R.raw.ryze );
break;
case R.id.sejuani :
mediaplayer= MediaPlayer.create(this,R.raw. sejuani);
break;
case R.id.shaco :
mediaplayer= MediaPlayer.create(this,R.raw. shaco);
break;
case R.id.shen :
mediaplayer= MediaPlayer.create(this,R.raw. shen);
break;
case R.id.shyvana:
mediaplayer= MediaPlayer.create(this,R.raw. shyvana);
break;
case R.id. singed:
mediaplayer= MediaPlayer.create(this,R.raw.singed );
break;
case R.id. sion:
mediaplayer= MediaPlayer.create(this,R.raw.sion );
break;
case R.id. sivir:
mediaplayer= MediaPlayer.create(this,R.raw. sivir);
break;
case R.id. skarner:
mediaplayer= MediaPlayer.create(this,R.raw. skarner);
break;
case R.id.sona :
mediaplayer= MediaPlayer.create(this,R.raw. sona);
break;
case R.id. soraka:
mediaplayer= MediaPlayer.create(this,R.raw.soraka );
break;
case R.id.swain :
mediaplayer= MediaPlayer.create(this,R.raw.swain );
break;
case R.id.syndra :
mediaplayer= MediaPlayer.create(this,R.raw.syndra );
break;
case R.id. talon:
mediaplayer= MediaPlayer.create(this,R.raw.talon );
break;
case R.id.taric :
mediaplayer= MediaPlayer.create(this,R.raw.taric );
break;
case R.id.teemo :
mediaplayer= MediaPlayer.create(this,R.raw.teemo );
break;
case R.id. tf:
mediaplayer= MediaPlayer.create(this,R.raw.twistedfate );
break;
case R.id. tristana:
mediaplayer= MediaPlayer.create(this,R.raw. tristana);
break;
case R.id.trundle :
mediaplayer= MediaPlayer.create(this,R.raw.trundle );
break;
case R.id.tryndamere:
mediaplayer= MediaPlayer.create(this,R.raw.tryndamere);
break;
case R.id.twitch :
mediaplayer= MediaPlayer.create(this,R.raw. twitch);
break;
case R.id. udyr:
mediaplayer= MediaPlayer.create(this,R.raw.udyr );
break;
case R.id. urgot:
mediaplayer= MediaPlayer.create(this,R.raw.urgot );
break;
case R.id. varus:
mediaplayer= MediaPlayer.create(this,R.raw. varus);
break;
case R.id.vayne :
mediaplayer= MediaPlayer.create(this,R.raw. vayne);
break;
case R.id.veigar :
mediaplayer= MediaPlayer.create(this,R.raw.veigar );
break;
case R.id.viktor :
mediaplayer= MediaPlayer.create(this,R.raw. viktor);
break;
case R.id.vladimir :
mediaplayer= MediaPlayer.create(this,R.raw.vladimir );
break;
case R.id.volibear :
mediaplayer= MediaPlayer.create(this,R.raw.volibear);
break;
case R.id.warwick :
mediaplayer= MediaPlayer.create(this,R.raw.warwick );
break;
case R.id.wukong :
mediaplayer= MediaPlayer.create(this,R.raw. monkeyking);
break;
case R.id.xerath :
mediaplayer= MediaPlayer.create(this,R.raw.xerath );
break;
case R.id.xinzhao :
mediaplayer= MediaPlayer.create(this,R.raw. xinzhao);
break;
case R.id.yi :
mediaplayer= MediaPlayer.create(this,R.raw. masteryi);
break;
case R.id.yorick :
mediaplayer= MediaPlayer.create(this,R.raw.yorick );
break;
case R.id.zed :
mediaplayer= MediaPlayer.create(this,R.raw.zed );
break;
case R.id.ziggs :
mediaplayer= MediaPlayer.create(this,R.raw. ziggs);
break;
case R.id.zilean :
mediaplayer= MediaPlayer.create(this,R.raw.zilean );
break;
case R.id.zyra :
mediaplayer= MediaPlayer.create(this,R.raw.zyra );
break;
case R.id.vi :
mediaplayer= MediaPlayer.create(this,R.raw.vi );
break;
}
mediaplayer.start();
//setContentView(viewer);
mediaplayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mediaplayer.release();
}
});
}
@Override
protected void onDestroy() {
mediaplayer.release();
super.onDestroy();
}
}