티스토리 뷰
(버그인지, 잘못 사용하고있는 것인지 잘 모르겠지만,) FullScreenCover를 연 뒤, presentationMode.wrappedValue.dismiss()가 동작하지 않는 경우가 있는데
아래 글을 참고했을 때, FullScreenCover가 열려있는 상태로 State가 변경되는 등의 동작으로 뷰가 재구성 될 때 일어날 수 있다고 한다.
구현을 급하게 해야하는 상황이라 FullScreenCover를 View를 transition과 함께 ZStack으로 보여주는 방식으로 변경하고 나중에 다시 상황을 재현해 확인하려 했는데 프로젝트 구현 중 만났던 상황같이 재현이 되질 않는다.
FullScreenCover를 연 뒤 특정 행동들을 하면 몇몇 조작들로 인해 문제가 생기는데,
그나마 공통점은 대부분의 경우 EnvironmentObject 내의 function에 뷰의 State를 Binding 시킨 뒤, 실행시켜 State가 변했을 때다.
왠지 TabView와 Navigation뷰를 같이 썼을 때와 비슷하게 내 뒤의 뷰를 못찾아서 그런 것 같은 느낌도 드는데, 다음에 다시 확인할 때 원인을 제대로 확인해봐야겠다.
FullScreenCover not dismissing - SwiftUI
I have a .fullScreenCover that opens when I reach a certain point in my app. When I want to dismiss it and reset the app I dismiss the view and set the ContentView ID to a new UUID(). Here is my ma...
stackoverflow.com
'iOS > SwiftUI' 카테고리의 다른 글
[SwiftUI] Text.limitLine(nil) 작동하지 않는 것 같을 때 (Text 내의 문자열이 전부 표시되지 않을 때) (0) | 2021.07.01 |
---|---|
[SwiftUI] .toolbar를 통해 NavigationLink 동작 시키기 (0) | 2021.03.20 |
[SwiftUI] (List 등) 스크롤 시 키보드 닫기 (0) | 2021.03.10 |
- Total
- Today
- Yesterday
- UIViewController
- trampoline function
- fixedsize
- rxswift
- UIKit
- NavigationLink
- Text.limitLine
- concurrent
- lineLimit
- FuulScreenCover
- Observable
- Binding
- UITableView
- UIView
- reactivex
- Swift
- ToolbarItem
- EnvironmentObject
- .toolbar
- tail-recursive
- recursive function
- tableFooterView
- async
- uiscrollview
- trampoline
- SwiftUI
- DisposeBag
- dispose
- Disposable
- tail call
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |