dart – Flutter – 键盘在屏幕上抬起FloatingActionButton

前端之家收集整理的这篇文章主要介绍了dart – Flutter – 键盘在屏幕上抬起FloatingActionButton前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用TextField,但键盘正在提升FloatingActionButton.我想知道键盘是否有可能不引发FloatingActionButton?

在下面的代码中,我以两种不同的方式放置了两个FloatingActionButton,但是在两个键盘都上升,这阻碍了字段填充,因为FAB与TextField在同一行,根据下面的gif.

有什么方法可以解决这个问题吗?

enter image description here

import 'package:flutter/material.dart';
import 'dart:ui' as ui;

void main() {
  runApp(new MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(      
      home: new MyHomePage(),);
  }
}

class MyHomePage extends StatefulWidget {
  @override
  _MyHomePageState createState() => new _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    final ui.Size logicalSize = MediaQuery.of(context).size;
    final double _width = logicalSize.width;
    return new Scaffold(
      appBar: new AppBar(backgroundColor: new Color(0xFF26C6DA)),body: new Stack(
        children: <Widget>[
          new ListView(
            children: <Widget>[
              new TextField(
                decoration: const InputDecoration(
                  labelText: "Description",),style: Theme.of(context).textTheme.title,new TextField(
                decoration: const InputDecoration(
                  labelText: "Description",],new Positioned(
            bottom: 16.0,left: (_width / 2) - 28,child: new FloatingActionButton(
              backgroundColor: new Color(0xFFE57373),child: new Icon(Icons.check),onPressed: (){}
            ),)
        ],floatingActionButton: new FloatingActionButton(
        backgroundColor: new Color(0xFFE57373),);
  }
}

解决方法

看起来你正在设计一个全屏对话框.

浮动操作按钮表示应用程序中的主要操作,如创建新项目.它不是您用来确认更改并解除包含文本字段列表的全屏对话框的内容.

而不是使用FloatingActionButton,我会在动作槽中推荐一个带有FlatButton的AppBar,就像在这个Material design example中一样:

save

您可以在Gallery source code中看到如何在Flutter中构建全屏对话框的示例.

猜你在找的Flutter相关文章