Ich verwende Master/Detail Layout in einer Tablette, auf der linken Seite einige Tasten, um mehrere Fragmente zu öffnen, enthält eines der Fragmente Youtube-Player.schließen Vollbild von Youtube Player auf der Rückseite Taste innerhalb Fragment
Das Problem,
Wenn der YouTube-Player ist Vollbild, und ich drücken Sie die Taste zurück, die AktivitätonBackPressed
ist, und die ganze Aktivität genannt wird geschlossen.
Was ich versucht habe,
1- auf KeyListener Hinzugefügt für Elternfragment (das ist das Youtube Fragment enthält) und zu handhaben, wenn klicken Sie auf Zurück-Taste, aber diese Hörer nur aufgerufen, wenn der Spieler nicht Vollbild ist , sonst wird es nicht genannt,
rootView.setFocusableInTouchMode(true);
rootView.requestFocus();
rootView.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_UP) {
try {
// Close full screen
return true;
} catch (Exception e) {
AHHExceptionHandler.handleException(e);
}
}
return false;
}
});
2- Added onKeyListener zu youtubeFragment Ansicht zu überprüfen, ob es Vollbild dann den Vollbildmodus
youTubeFragment.getView().setFocusableInTouchMode(true);
youTubeFragment.getView().requestFocus();
youTubeFragment.getView().setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_UP) {
try {
youTubePlayer.setFullscreen(false);
return true;
} catch (Exception e) {
AHHExceptionHandler.handleException(e);
}
}
return false;
}
});
schließen
Und dies wird auch nicht in allen Fällen genannt.
Ich muss die Hardware-Zurück-Taste behandeln, während der Youtube-Player im Vollbildmodus ist, der Vollbildmodus ist geschlossen und die Anwendung ist in ihrem vorherigen Zustand.
Danke.
Edit 1: - Ich will das im Innern des Fragments behandeln, anstatt sie in der übergeordneten Aktivität Handhabung, ich habe es innerhalb der übergeordneten Aktivität bereits Handhabung, aber ich weiß nicht, wie diese Lösung.
Haben Sie eine Lösung für diese andere finden als das, was Sie hier beschrieben oder das Hinzufügen von youtube-spezifischer Code in der Aktivität onBackPressed? – ashishduh
Nein, ich konnte keine andere Lösung finden –