Jump to content
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr ×
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr
  • 0

IOS 에서 기기 회전시 동적 Orientations 이 적용되지 않는 문제


가을이다

질문

안녕하세요.
델파이로 앱을 개발중인데, 사용자가 기기를 회전할 시에 일반 화면에서는 세로모드 고정으로 하고
특정화면에서만 회전을 가능하게 하려합니다.

예)
Tab1 : 세로모드 고정
Tab2 : 세로모드 고정
Tab3 : 세로/가로 자유모드

그래서 아래와 같은 함수를 만들어서 Android 에서 정상적으로 사용을 했었습니다.

//--------------------------------------------------------------------------
//화면 가로 세로 사이즈 모드 전환
//Mode = 세로고정, 자유모드
//--------------------------------------------------------------------------
procedure Tfrm_Base.SetScreenControl(Mode: string);
var
  ScreenService      : IFMXScreenService;
  ScreenOrientations : TScreenOrientations;
begin

  if Mode = '세로고정' then
    begin
      { Portrate로 고정 }
      if TPlatformServices.Current.SupportsPlatformService(IFMXScreenService, IInterface(ScreenService)) then
        begin
         ScreenOrientations := [ TScreenOrientation.Portrait ];
         ScreenService.SetSupportedScreenOrientations( ScreenOrientations );
        end;
    end;

  if Mode = '자유모드' then
    begin
      { 자유모드 }
      if TPlatformServices.Current.SupportsPlatformService(IFMXScreenService, IInterface(ScreenService)) then
        begin
         ScreenOrientations := [];
         ScreenService.SetSupportedScreenOrientations( ScreenOrientations );
        end;
    end;

end;

그런데 IOS 에서는 안되더군요.

위 함수로 앱실행중에 동적으로 모드 변경이 안됩니다. (안드로이드에서는 잘 됩니다)

델파이 에서 보통 초기 방향설정을 Project Option -> Application -> Orientation 에서 설정하게 됩니다.
[v]Enable custom orientation 
[v]Portrait 

위와 같이  Project Option 설정에서 지정한 대로만 IOS에는 인식이 되고, 
앱실행중에는 위 함수처럼 회전 모드를 변경하는 것이 안됩니다.

안드로이드에서는 잘 동작합니다.

혹시 IOS에서는 다른 부분을 더 설정해야하는 부분이 있는지요?

아니면 델파이 11버전의 버그일까요?

도움 부탁드립니다.

[환경]
Delphi 11.0
IOS 13.7

이 댓글 링크
다른 사이트에 공유하기

0 answers to this question

Recommended Posts

이 질문에 답변한 사람이 아직 없습니다

이 토의에 참여하세요

지금 바로 의견을 남길 수 있습니다. 그리고 나서 가입해도 됩니다. 이미 회원이라면, 지금 로그인하고 본인 계정으로 의견을 남기세요.

Guest
이 질문에 답변하기...

×   서식있는 텍스트로 붙여넣기.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   이전에 작성한 콘텐츠가 복원되었습니다..   편집창 비우기

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

중요한 정보

이용약관 개인정보보호정책 이용규칙 이 사이트가 더 잘 작동하기 위해 방문자의 컴퓨터에 쿠키가 배치됩니다. 쿠키 설정 변경에서 원하는 설정을 할 수 있습니다. 변경하지 않으면 쿠키를 허용하는 것으로 이해합니다.