Hey @domhnallohanlon !
Thanks for your investigation on this case!
In the meantime I was in contact with @jane via the chatbot. She wrote me what you already mentioned here, that this is the expected behavior - except when the screens would be used in a navigator. That’s the case with my app: the calling screen with the labels is part of a Bottom_Tab_Navigator.
Then, yesterday, there was a surprise: suddenly the label values in my app were back to the desired (changed) state after the screen change. (Again, without a change in the app). I immediately wrote to Jane and asked her if she had done anything yet. She is still investigating this case.
This made me curious and I added a navigator to the test app for this case (see articles above) and documented the following results:
Scenario: labels are changed in screen 1, then Screen 2 is called, then back to screen 1:
If both screens are outside the navigator: Labels are reset to initial values.
If screen 1 is inside a navigator and screen 2 is outside (that’s how it is in my case): The label values in screen 1 are kept.
If screen 2 is inside a navigator and screen 1 is outside: The labels are reset to the initial values.
If both screens are inside the navigator: The label values in screen 1 are kept.
From my point of view, it would be correct if the values are actually kept in all cases. Maybe you guys can reconsider this. However, we have a working solution for current and future cases. The only worry: no one really knows why the behavior had changed for a few days in between. I cross all available fingers that this does not happen again !