Ändern der Bildschirmausrichtung in Android

Ich möchte die Bildschirmausrichtung auf @ änderSENSO wenn das Frame-Layout sichtbar ist (d. h. das Video wird im Vollbildmodus wiedergegeben), was gut funktioniert, aber ich möchte es auf @ zurücksetzPORTRÄ Wenn das Frame-Layout weg ist Was nicht funktioniert (Keine Fehler, aber der Code macht nichts) Ich habe dies bisher versucht

// Finally show the custom view container.
        mCustomViewContainer.setVisibility(View.VISIBLE);
        mCustomViewContainer.bringToFront();

        // auto orientation change if video is playing
        if (mCustomViewContainer.getVisibility() == View.VISIBLE) {
            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
        } else {        
            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
        }       
    }

die Behelfslösung, die ich fand, war, Ausrichtung onbackpressed zu ändern, weil dort ich mein Rahmenlayout auch verstecke

@Override
public void onBackPressed() {
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    exitdlg = (View) findViewById(R.id.exitdlg);
    options1 = (View) findViewById(R.id.options1);
    if (mCustomView != null) {// close full screen video view if open
        mWebChromeClient.onHideCustomView();// FULL-SCREEN VIDEO-5
    } else if (options1.getVisibility() == View.VISIBLE) {
        findViewById(R.id.options1).setVisibility(View.GONE);

    } else if (exitdlg.getVisibility() == View.GONE) {// this brings
                                                        // up/hides
        // menu 1 on hardware
        // options btn
        // Its visible
        findViewById(R.id.exitdlg).setVisibility(View.VISIBLE);
    } else {
        // Either gone or invisible
        findViewById(R.id.exitdlg).setVisibility(View.GONE);

    }
}

Aber es funktioniert nur, wenn ich zweimal die Back-Taste drücke, die ich nicht will. das ist woher ich diesen Code habe

Antworten auf die Frage(0)

Ihre Antwort auf die Frage