1

そのため、サウンドプールを使用して、タイマーの終了時にサウンドを再生しています。onCreate 私はこれをやっています

int mySoundId;
SoundPool soundPool;

// load sound

soundPool = new SoundPool(5, AudioManager.STREAM_MUSIC, 0);

AssetManager am = this.getAssets();

//Use in whatever method is used to load the sounds
try {
    mySoundId = soundPool.load(am.openFd("alarm.wav"), 1);
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

私は得ていた

サンプル 0 の準備ができていません

だから私は私が使用しなければならないと考えました

soundPool.setOnLoadCompleteListener(new OnLoadCompleteListener() {
    @Override
    public void onLoadComplete(SoundPool soundPool, int mySoundId, int status) {
        loaded = true;
    }
});

しかし、私の問題は、 setOnLoadCompleteListener が次のエラーを返すことです

タイプ SoundPool のメソッド setOnLoadCompleteListener(SoundPool.OnLoadCompleteListener) は引数に適用されません (new OnLoadCompleteListener(){})

「Android Tools -> Fix Project Properties」や「Properties -> Java Compiler」をいじるなど、さまざまなことを試しましたが、喜びはありませ。私の API 範囲は 10 ~ 16 なので、問題ないはずです。何に問題があるのでしょうか?

4

2 に答える 2

3

以下のコードを使用します。インポートが間違っている可能性があります。とにかくこれはうまくいくはずです

soundPool.setOnLoadCompleteListener(new SoundPool.OnLoadCompleteListener() {
    @Override
    public void onLoadComplete(SoundPool soundPool, int mySoundId, int status) {
        loaded = true;
    }
});
于 2012-08-30T21:23:50.163 に答える