옵션 1:
viewController.isModalInPresentation = true
(비활성화 된 대화 형 .pageSheet
해고는 이와 같이 작동합니다.)
- iOS 13부터는 대화 형 해제를 방지하기 위해 로 설정해야하는
UIViewController
새 속성이 포함되어 있습니다 .isModalInPresentation
true
- 기본적으로 뷰 컨트롤러의 경계를 벗어난 이벤트를 무시합니다. 자동 스타일뿐만 아니라 프레젠테이션 스타일
.popover
등을 사용하는 경우 유의하십시오 .
- 이 속성은
false
기본적으로 사용됩니다.
로부터 공식 문서 : 만약 true
이 화면에있는 동안, UIKit은 뷰 컨트롤러의 경계 및 방지 외부 뷰 컨트롤러의 상호 작용 해고 이벤트를 무시합니다.
옵션 2 :
func presentationControllerShouldDismiss(_ presentationController: UIPresentationController) -> Bool {
return false
}
- 아이폰 OS (13) 때문에,
UIAdaptivePresentationControllerDelegate
라고하는 새로운 방법을 포함 presentationControllerShouldDismiss
.
- 이 메서드는 제공된 뷰 컨트롤러가 프로그래밍 방식으로 해제되지 않고
isModalInPresentation
속성이로 설정된 경우에만 호출됩니다 false
.
팁 : presentationController의 델리게이트를 지정하는 것을 잊지 마십시오.