Lut*_*ris 2 textinput dart flutter
这是正在使用的包,当我在其中使用 TextInput 时,panelBuilder 它同时具有 ListView 和 InputTextField,但是当我开始键入时,软键盘会覆盖 InputText 字段。
我还尝试添加这一行:
resizeToAvoidBottomInset: false,在 Manfiest 文件中加上Scaffold这个
<item name="android:windowFullscreen">true</item>。
但没有运气。
以下是屏幕截图:
[图二
将结果的内容包含panelBuilder在 a 中Scaffold并且不要更改resizeToAvoidBottomInset。默认情况下,调整大小true会将内容向上移动以避免在出现时被键盘隐藏。设置false可防止调整大小的发生。
下面的示例来自Slide_up_panel 包 example,panelBuilder参数结果包含在Scaffold. (我并不是建议您_panel像我在下面所做的那样换行,只是更容易地展示以这种方式工作的示例。可能更好地在_panel本身中使用 Scaffold 可能会更好。)
@override\n Widget build(BuildContext context){\n _panelHeightOpen = MediaQuery.of(context).size.height * .80;\n\n return Material(\n child: Stack(\n alignment: Alignment.topCenter,\n children: <Widget>[\n\n SlidingUpPanel(\n maxHeight: _panelHeightOpen,\n minHeight: _panelHeightClosed,\n parallaxEnabled: true,\n parallaxOffset: .5,\n body: _body(),\n // WRAP panel contents in Scaffold\n panelBuilder: (sc) => Scaffold(body: _panel(sc)),\n // \xe2\x86\x91\xe2\x86\x91\xe2\x86\x91\xe2\x86\x91\xe2\x86\x91\xe2\x86\x91\xe2\x86\x91\xe2\x86\x91\n borderRadius: BorderRadius.only(topLeft: Radius.circular(18.0), topRight: Radius.circular(18.0)),\n onPanelSlide: (double pos) => setState((){\n _fabHeight = pos * (_panelHeightOpen - _panelHeightClosed) + _initFabHeight;\n }),\n ),\nRun Code Online (Sandbox Code Playgroud)\n要测试自己,请在底部添加一个 TextFormFieldWidget _panel(ScrollController sc)方法的底部(大约第 242 行)
SizedBox(height: 24,),\n // \xe2\x86\x93 Added for testing\n TextFormField(\n initialValue: \'type here\',\n onSaved: (txt) => null,\n )\nRun Code Online (Sandbox Code Playgroud)\n然后运行该示例,向上滚动面板并点击 TextField 让键盘向上滑动。
\n\n| 归档时间: |
|
| 查看次数: |
1503 次 |
| 最近记录: |