私は3つのアクティビティを持つシンプルなビデオプレーヤーを持っています。私の最後の活動で
player.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (event.getAction() != KeyEvent.ACTION_DOWN)
return false;
///
case KeyEvent.KEYCODE_MEDIA_STOP:
finish();
return true;
これは、停止を押したときにやりたいことを正確に実行します。前のアクティビティに移動します
しかし..
player.setOnErrorListener(new MediaPlayer.OnErrorListener() {
@Override
public boolean onError(MediaPlayer mediaPlayer, int i, int i2) {
player.setVisibility(View.GONE);
buffering.setVisibility(View.GONE);
errorDialog.setVisibility(View.VISIBLE);
return true;
}
});
errorDialog には、finish() を呼び出す小さなボタン (私が作成) があり、それを押すと、前のアクティビティ (2 つ目) ではなくメイン アクティビティ (1 つ目) に戻りますが、その理由がわかりません。アクティビティで finish() を使用しますが、それでも同じことを行います。あなたの時間とサポートに感謝します。