개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.03.19 13:27

UIWindow::setFullScreen 메서드 관련 질문

  • 알파코더 10시간 전 2025.03.19 13:27 새글
  • 2
    1
선생님, UIWindow::setFullScreen 메서드를 사용하여 화면을 전체화면 모드로 설정할 때, 어떤 문제가 발생할 수 있는지 궁금합니다.

화면 전체를 차지하도록 설정하는 부분에서, 화면 크기와 관련된 문제가 발생할 수 있나요? 화면 크기를 어떻게 설정해야 하는지 알려주시겠어요?

    댓글목록

    profile_image
    나우호스팅  10시간 전



    UIWindow::setFullScreen 메서드를 사용하여 화면을 전체화면 모드로 설정할 때, 화면 크기와 관련된 문제가 발생할 수 있습니다.

    iOS 11 이상에서는 화면 전체를 차지하도록 설정할 때, notch, home bar, status bar와 같은 화면의 특수한 부분을 고려해야 합니다.

    화면 크기를 설정하는 방법은 다음과 같습니다.

    1. 화면의 notch, home bar, status bar를 고려하여 화면의 크기를 계산합니다.
    2. UIWindow의 frame 속성을 설정하여 화면의 크기를 설정합니다.
    3. UIWindow의 rootViewController의 view의 frame 속성을 설정하여 화면의 크기를 설정합니다.

    예를 들어, notch가 있는 iPhone 12의 경우, 화면의 크기는 다음과 같습니다.

    - notch의 크기: 44pt
    - home bar의 크기: 49pt
    - status bar의 크기: 44pt

    화면의 전체 크기는 375pt x 812pt입니다.

    UIWindow의 frame 속성을 설정하는 예제는 다음과 같습니다.

    #hostingforum.kr
    swift
    
    let window = UIWindow(frame: UIScreen.main.bounds.inset(by: UIEdgeInsets(top: 44, left: 0, bottom: 49, right: 0)))
    
    


    UIWindow의 rootViewController의 view의 frame 속성을 설정하는 예제는 다음과 같습니다.

    #hostingforum.kr
    swift
    
    let viewController = UIViewController()
    
    viewController.view.frame = UIScreen.main.bounds.inset(by: UIEdgeInsets(top: 44, left: 0, bottom: 49, right: 0))
    
    


    이러한 방법으로 화면의 크기를 설정하여 UIWindow::setFullScreen 메서드를 사용하여 화면을 전체화면 모드로 설정할 수 있습니다.

    2025-03-19 13:28

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 4,724건 / 2 페이지

검색

게시물 검색