flutter - Flutter,去除 FAB 缩放动画
问题描述
第一次加载页面时,FAB 默认总是做缩放动画的东西。
如何删除/禁用浮动操作按钮缩放动画
我已经做的是
return Scaffold(
floatingActionButtonAnimator: AnimationNoScaling(),
...
import 'package:flutter/material.dart';
class AnimationNoScaling extends FloatingActionButtonAnimator{
double? _x;
double? _y;
@override
Offset getOffset({Offset? begin, Offset? end, double? progress}) {
_x = begin!.dx +(end!.dx - begin.dx)*progress!;
_y = begin.dy +(end.dy - begin.dy)*progress;
return Offset(_x!,_y!);
}
@override
Animation<double> getRotationAnimation({Animation<double>? parent}) {
return Tween<double>(begin: 1.0, end: 1.0).animate(parent!);
}
@override
Animation<double> getScaleAnimation({Animation<double>? parent}) {
return Tween<double>(begin: 1.0, end: 1.0).animate(parent!);
}
}
这不起作用上面的代码也来自其他问题
解决方案
实际上,当第一次加载页面时,FAB 没有动画。但是,如果您删除 FAB(通过设置: floatingActionButton: null
)和/或将其带回,它会动画。如果您的业务逻辑允许,可能使用Offstage
或Visibility
小部件来“隐藏”FAB 而不是删除它。这样,它会立即消失并立即出现。
另一种可能的解决方案是,您不必使用 FAB 小部件,您可以将任何小部件传递给属性,例如 an或其他任何东西,所以真的,一切皆有可能。:DfloatingActionButton
IconButton
推荐阅读
- sql - PostgreSQL 中用于表格报告的内部选择的 SQL 性能问题
- string - Lua 字符串到表
- laravel - Maatwebsite/Laravel-Excel 查询结果与下载的 XLS 不同
- microsoft-graph-api - 如何在“发送邮件”中添加 In-Reply-To 和 References?
- php - 使用 PHP 提交具有不同提交按钮和表单的页面
- javascript - 如何在 nodejs 中结合 API GET 请求?
- scala - ReactiveMongo 不可恢复的异常:未授权
执行命令 - mfc - 更改 MFC 菜单以显示所有项目而不是箭头?
- ios - iOS Smart App Banner 是否适用于 iOS Chrome/Firefox 浏览器?
- python - Python获取Javascript变量的值