Digamos que tengo un Scaffold principal de nivel superior con una appBar de aplicaciones y un body .
Tengo un botón en la barra de aplicaciones y en su onTap hago:
Navigator.push( context, new MaterialPageRoute(builder: (_) => new DogeWidget()) ); Ahora DogeWidget también es un Scaffold , porque me gusta la representación predeterminada de la barra de aplicaciones.
Qué esta pasando:
DogeWidget desde la parte inferior de la pantalla. Es todo un andamio que se desliza, no solo el cuerpo.Lo que me gustaría ver:
No sé si debo escribir esto yo mismo o hay algo que Flutter pueda proporcionar.
AFAICT, la Galería hace lo que quiero (por ejemplo, toque el elemento "tipografía"): el comportamiento es diferente a pesar de que mi código es una copia y pega casi alfabetizada. ¿Por qué?
Durante un tiempo, tuvimos un truco que hizo que esto sucediera al convertir a AppBar en un héroe, pero no fue una buena implementación y causó más problemas de los que valía, por lo que lo retiramos. Eso es probablemente lo que estás viendo.
No hay una manera fácil de hacer esto utilizando Navigator con el marco de material actual, aunque ciertamente puede implementar widgets en la parte superior de la capa de widgets que lo hacen si lo desea. Sin embargo, lo que podría hacer es implementarlo al tener un navegador dentro del body de su MaterialApp y luego reemplazar manualmente la barra de aplicaciones (tal vez a través de un widget de fundido cruzado como AnimatedCrossFade).
Resolver esto correctamente es algo que tenemos la intención de hacer a su debido tiempo, pero estamos priorizando los errores y la estabilidad de la API en este momento, por lo que no es algo que planeemos hacer a corto plazo (los próximos meses).