나는 음악을 만든 app.the 응용 프로그램은 btns.the 응용 프로그램이 문제없이 실행 (16) 음악을 가지고 있지만 난 .. 아래 응용 프로그램의 힘앱의 힘은 아래로 suddently
super.onCreate(icicle);
setContentView(R.layout.main);
int[] ids = {R.id.btn,R.id.btn2, R.id.btn3, R.id.btn4, R.id.btn5, R.id.btn6, R.id.btn7, R.id.btn8, R.id.btn9, R.id.btn10,
R.id.btn11, R.id.btn12, R.id.btn13, R.id.btn14, R.id.btn15, R.id.btn16 };
for (int i : ids) {
b = (Button) findViewById(i);
b.setOnClickListener(this);
}}
//outside of onCreate()
@Override
public void onClick(View v) {
switch(v.getId()) {
case R.id.btn:
if (mp != null && mp.isPlaying()) mp.stop();
mp = MediaPlayer.create(zoo.this, R.raw.gata);
mp.start();
break;
이 여러 번 btns를 누를 때 코드 및 모든 btn에 대 한 사례를 사용합니다. 응용 프로그램이 강제로 중단 될 때 logCat은 mp.start()에서 NullPointerException을 찾습니다. 아래로 응용 프로그램을 강제로 버튼 ..의 도움을 보라! 나는 포인트가 MediaPlayer를 꽤 무거운 무게 자원이며, 당신이 그들을 너무 많이 생성 안된다는 생각
case R.id.btn:
if (mp != null && mp.isPlaying()) mp.stop();
mp.reset();
try {
mp.setDataSource("zoo.this,R.raw.gata");
} catch (IllegalArgumentException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalStateException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
mp.start();
break;
버튼을 누를 때마다 새로운 'MediaPlayer'를 만드시겠습니까? 클래스는 이유 때문에'reset()'과'setDataSource()'메소드를 가지고있다. –
죄송합니다, 안드로이드 개발에 새로운입니다! 어떻게 해결할 수 있습니까? –
[MediaPlayer] (http://developer.android.com/reference/android/media/MediaPlayer.html) 클래스에 대한 설명서를 살펴보십시오. –