You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Using UIViewControllerRepresentable means view lifecycle functions do not properly work because of how views are now disabled and hidden but still shown
#8
Open
bryan1anderson opened this issue
Oct 9, 2023
· 1 comment
You recently implemented a change that made views no longer disappear so that the views were not completely deconstructed and reconstructed each time you switched tabs.
This has unforeseen consequences such as the fact that viewDidAppear does not get called when you switch to a tab. In my own project I implemented an EnvironmentKey that passed down "isViewVisible" that then manually called viewDidAppear on a UIViewControllerRepresentable.
However, viewDidAppear still gets called on all the view controllers on init of the tab bar, despite them not being shown.
The text was updated successfully, but these errors were encountered:
Yes, "disabled" views are simply hidden, and there will be problems when calling viewDidAppear. However, I haven't found a way to resolve the issue. View states cannot persist without hiding views using opacity(_:).
I just want to use pure SwiftUI to implement the TabBar. For now, the only way is to pass a willSelect action into tabItem(_:label:willSelect:) to manually call functions.
You recently implemented a change that made views no longer disappear so that the views were not completely deconstructed and reconstructed each time you switched tabs.
This has unforeseen consequences such as the fact that viewDidAppear does not get called when you switch to a tab. In my own project I implemented an EnvironmentKey that passed down "isViewVisible" that then manually called viewDidAppear on a UIViewControllerRepresentable.
However, viewDidAppear still gets called on all the view controllers on init of the tab bar, despite them not being shown.
The text was updated successfully, but these errors were encountered: