Традиционный метод, которым я всегда придерживался, - это чтобы каждая страница имела свой собственный Scaffold и свой собственный AppBar. Это происходит из-за того, что этот контекст передается от одного Scaffold к другому, когда AppBar знает, что есть изменение навигации.
Я не думаю, что анимация перехода страницы применяется к AppBar, но даже если это так, есть Обходной путь к этому. Вы можете написать свой собственный FadePageTransition, чтобы вы не заметили смещение панели приложений, плюс дополнительный бонус к тому, что он выглядит действительно круто.
Если вы хотите go с одним Scaffold, глобальным подходом AppBar, это может быть сделано, но кажется немного грязным. Вы можете подключить к нему провайдера и изменить текущее состояние через него, но это грязно по двум причинам: 1) поток провайдера всегда отправляется в AppBar и 2) вам нужно будет каждый раз устанавливать значение в провайдере pu sh новый экран, чтобы уведомить AppBar об изменениях.