首页 > 解决方案 > Flutter:FloatingActionButton 没有阴影和触摸动画

问题描述

演示应用程序中的默认 FAB 在触摸时具有阴影和波纹效果。

适当的FAB

但是,当FAB移动到另一个类时,它突然失去了这种效果,这使得它看起来相当平淡。

蹩脚的FAB

是否可以将阴影和波纹动画带到普通的 FAB 中,同时将其保留在单独的类中?

主要.dart

import 'package:test_app/TestItem1.dart';
import 'package:flutter/material.dart';

void main() => runApp(new MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      title: 'Flutter Demo',
      theme: new ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: new MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key key, this.title}) : super(key: key);
  final String title;

  @override
  _MyHomePageState createState() => new _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: new AppBar(
        title: new Text(widget.title),
      ),
      body: new TestItem1(),
    );
  }
}

TestItem1.dart

import 'package:flutter/material.dart';

class TestItem1 extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
        body: new Center(
          child: new Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              new Text(
                'test 1',
              ),
              new Text(
                'test1',
                style: Theme.of(context).textTheme.display1,
              ),
            ],
          ),
        ),
        floatingActionButton: new FloatingActionButton(
          tooltip: 'Increment',
          onPressed: null,
          child: new Icon(Icons.add),
        ),
      );
  }
}

标签: flutter

解决方案


如果您什么都不做,默认情况下会禁用浮动操作按钮

onPresss()

如果您不想放弃 onPress 只需传递(){}一个匿名方法


推荐阅读