打开文本字段会导致父部件重建

Opening a text field causes the parrent widget to rebuild

我的应用程序结构如下:

    class MainPage extends StatefulWidget {
  MainPage({Key? key}) : super(key: key);

  @override
  State<MainPage> createState() => _MainPageState();
}

class _MainPageState extends State<MainPage> {
  @override
  Widget build(BuildContext context) {
    BlocProvider.of<NavigationBloc>(context).add(const DashboardEvent());
    int _selectedIndex = 0;
    return Scaffold(
      appBar: AppBar(
        elevation: 0,

主页负责通过导航块进行导航。不同的按钮根据我要显示的页面添加不同的事件。到目前为止,一切正常,但突然间,当我在我的应用程序中打开任何 TextField 时,它会导致此主页重建,调用 DashboardEvent 并且带有文本字段的页面消失。

我知道打开 TextField 会导致 flutter 调用 build 方法,但到目前为止,只导致页面重建,而不是父 widget。我不知道为什么它突然表现得像这样。是否有任何我不记得可能导致此行为的设置可以切换?谢谢

    class MainPage extends StatefulWidget {
  MainPage({Key? key}) : super(key: key);

  @override
  State<MainPage> createState() => _MainPageState();
}

class _MainPageState extends State<MainPage> {
@override  
initState(){
    BlocProvider.of<NavigationBloc>(context).add(const DashboardEvent());
    int _selectedIndex = 0;
    super.initState();
  }
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        elevation: 0,