1

SoundPool を使用した「Sound」というカスタム クラスがあります。ロード完了リスナーを実装して、アクティビティがイントロ サウンドを再生し、ロードが完了すると「開始」ボタンを表示できるようにしたいと考えています。

リスナーを実装し、アクティビティから完全なステータスをテストして、すべてがロードされていることを確認してから、上記を実行するにはどうすればよいですか。

小さな例をいただければ幸いです。

MyActivity は、クラス「Sound」のインスタンスを作成して、そこからさまざまなサウンド メソッドを呼び出せるようにします。

Sound mySound = new Sound();

これらのほとんどは、呼び出されるまでにロードが完了しているため、問題ではありませんが、呼び出す前に MyActivity がロードが完了したかどうかを確認できるようにする必要があります。

mySound.playIntro(); 

(例えば)。

たぶん、OnLoadCompleteListener は最善の解決策ではないかもしれません。私はまだ学んでいるので、アイデアを受け入れています。

ありがとう

4

1 に答える 1

7

次のようになります。

SoundPool.setOnLoadCompleteListener(new OnLoadCompleteListener(){

@override
onLoadComplete(SoundPool soundPool, int sampleId, int status)
{
// show button and play intro sound here
}});

開発者向けの Android ガイドを読む必要があります。より具体的には、この問題について: SoundPool

編集 -タイプミスを「listner」から「listener」に修正

于 2010-10-11T18:07:19.403 に答える