Android 가로 세로 화면 전환, A(세로) 자르기 B(가로)로 돌아간 후, A는 가로로 하고 다시 세로로 변경, 해결 방법

수요를 할 때 일부 설비(연상 태블릿)를 발견하면 세로 화면 A에서 가로 화면 B로 다시 돌아오고 세로 화면 A는 가로 화면을 먼저 돌린 다음에 세로 화면으로 돌아간다.테스트 결과 샤오미의 설비에 이 문제가 없을 것(rom이 호환되었을 수도 있음)을 발견했고, 코드를 추가하면 이 문제를 해결할 수 있다는 것을 발견했다.
인터페이스 B를 시작할 때 현재 화면 방향을 가져옵니다. Intent를 통해ActivityB에 존재합니다.그리고 인터페이스 B의 onDestory에서 화면 방향을 다시 설정합니다.
private int fromOrientation;

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        fromOrientation = getIntent().getIntExtra("fromOrientation", ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
}

 @Override
    public void onDestroy() {
        super.onDestroy();
        if (fromOrientation != ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED) {
            setRequestedOrientation(fromOrientation);
        }
    }

좋은 웹페이지 즐겨찾기