What is the reason for the different behaviour depending on which view I come from? I cannot answer to your question directly.
But one thing is sure: You should not rely on when initializers of Views are called.
The runtime of SwiftUI may evaluate body and may call the initializer of a View at anytime it is needed.
You need to accept this fact when you write code in SwiftUI.
Topic:
UI Frameworks
SubTopic:
SwiftUI
Tags: