繁体   English   中英

在这种情况下,如何实现OnCompletionListener?

[英]How do I implement an OnCompletionListener for this situation?

我正在尝试按顺序播放两个声音文件。 我的应用程序应该“计数”,我希望它使用“二十”和“一个”文件,而不要使用多余的“二十一”文件。 我很确定我需要为此使用OnCompletionListener ,并且已经找到一些以前的答案来解释如何使用此功能,但我不知道如何实现它们(我可能对此很陌生猜到了。)

我认为这是最适合我的问题的答案。

如何一个接一个地播放音频文件

这是我的代码,没有尝试实现OnCompletionListener

import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;


public class GameActivity extends Activity {

TextView generatedNumberTV;
EditText inputNumberET;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.game_layout);

    generatedNumberTV = (TextView) findViewById(R.id.number_view);
    inputNumberET = (EditText) findViewById(R.id.number_input);

}

public void onSendGenerate(View view) {

    MediaPlayer twenty = MediaPlayer.create(GameActivity.this, R.raw.twenty);
    MediaPlayer one = MediaPlayer.create(GameActivity.this, R.raw.one);

    twenty.start();
    one.start();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}

使用此代码,两个声音文件将同时播放。

我已经为此停留了一段时间,因此将不胜感激。

首先,为MediaPlayer对象设置onCompletionListener:

twenty.setOnCompletionListener(listener);

而在监听器,你需要实现所谓的一种方法onCompletion()其中有一个MediaPlayer作为参数(这是目前MediaPlayerlistened的听众)。

参考: MediaPlayer.onCompletionListener

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM