presentationMode는 deprecated되었습니다!

SteadySlower·2022년 8월 31일
0

SwiftUI

목록 보기
30/64

PresentationMode

용도

우리가 presentationMode를 쓸 때는 주로 ModalView 같은 것을 뷰에서 dismiss할 때 사용했습니다. 아래 코드 처럼요.

struct ModalView: View {

    @Environment(\.presentationMode) var mode

		var body: some View {
				Button("나가기") { mode.wrappedValue.dismiss() } 
		}
}

하지만…

공식문서를 보시면 알겠지만 이제 PresentationMode는 deprecated되었다고 합니다😭 (bye bye…)  기존의 PresentationMode는 이제 isPresented와 dismiss로 각각 구분해서 사용하면 된다고 하네요.

dismiss 활용하는 법

바뀐 dismiss를 활용하는 법은 저 쉽습니다. 이제 wrappedValue로 내부값을 가져올 필요 없이 @Environment(.dismiss)로 할당한 변수(에 할당된 함수)를 그냥 실행해주면 됩니다.

struct ModalView: View {

    @Environment(\.dismiss) var dismiss

		var body: some View {
				Button("나가기") { dismiss() } 
		}
}
profile
백과사전 보다 항해일지(혹은 표류일지)를 지향합니다.

0개의 댓글