当我将TextFormField放入PageView时,避免重新调整屏幕大小

问题描述 投票:0回答:1

在此简化的代码中,我将两个TextFormField放入颤动的PageView页面中的一个,即将它们从Container(而不是任何Scaffold)扩展到另一类,现在,当我单击其中的一个[ C0],resizeToAvoidBottom *在我的代码中不起作用]

TextFormFields
flutter flutter-layout
1个回答
0
投票
您可以通过使用 Widget build(BuildContext context) { return Consumer<ThemeManager>(builder: (context, theme, child) { return Directionality( textDirection: TextDirection.rtl, child: Scaffold( key: _scaffoldKey, backgroundColor: theme.accentColor, resizeToAvoidBottomPadding: false, resizeToAvoidBottomInset: false, body: NotificationListener<OverscrollIndicatorNotification>( onNotification: (overScroll) { overScroll.disallowGlow(); return false; }, child: Container( width: double.infinity, height: double.infinity, child: IntrinsicHeight( child: Stack( children: <Widget>[ Container( width: MediaQuery.of(context).size.width, height: MediaQuery.of(context).size.height - 50, child: Column( mainAxisSize: MainAxisSize.max, children: <Widget>[ BuildLoginHeaderScreen(theme: theme), Expanded( child: PageView( controller: _pageController, children: <Widget>[ ... // contains two TextFormFields ], ), ), ], ), ), ], ), ), ), ), ), ); }); } 包装代码的适当部分来使用resizeToAvoidBottomPadding。例如

SingleChildScrollView

这将在键盘缩小显示区域时防止像素溢出。
© www.soinside.com 2019 - 2024. All rights reserved.