小编Md.*_*ikh的帖子

删除 Flutter PersistentFooterButtons 中的边距

我正在尝试删除 的默认边距persistentFooterButtons,但我找不到它,因为它收到了一个小部件列表。

\n

我正在使用extendBody: trueScaffold

\n

持久页脚按钮边距

\n

持久页脚按钮边距

\n
    persistentFooterButtons: [\n    Container(\n      color: const Color.fromRGBO(240, 240, 240, 0.9),\n      width: double.infinity,\n      child: Padding(\n        padding: const EdgeInsets.symmetric(horizontal: 2, vertical: 2),\n        child: Row(\n          children: [\n            Expanded(\n              child: GestureDetector(\n                child: Column(\n                  children: [\n                    const Image(\n                      image: AssetImage(\'assets/images/home.png\'),\n                      height: 35,\n                    ),\n                    Text(\n                      "In\xc3\xadcio",\n                      style: TextStyle(\n                        fontSize: 10,\n                        color: Theme.of(context).primaryColor,\n                      ),\n                    ),\n                  ],\n                ),\n              ),\n            ),\n          ],\n        ),\n      ),\n    )\n  ],\n
Run Code Online (Sandbox Code Playgroud)\n

flutter flutter-layout

5
推荐指数
1
解决办法
2009
查看次数

将 ElevatedButton.icon 的图标放置在右侧

我有一个带有图标的提升按钮,该图标使用 放置在文本左侧ElevatedButton.icon。我真正想要的是将图标放置在文本的右侧。我该如何做我的代码:

    ElevatedButton.icon(
        onPressed: onPressed,
        icon:Icon(icon,
          color: color != null ? color : null,
          size: getIconSize(),
        ),
        label: Text(label),
        style: buttonStyle);
Run Code Online (Sandbox Code Playgroud)

外观如何:

在此输入图像描述

我想要的是 :

下一页->

dart flutter flutter-layout

5
推荐指数
2
解决办法
8097
查看次数

如何使 SingleChildScrollView 在需要时用空白填充全屏高度

在我的 flutter 应用程序中,我需要一个布局,如果所有小部件对于屏幕来说都太长,我可以滚动,所以我添加了一个 SingleChildScrollView。但是,如果小部件较小并留有大量空间,我希望将最后一行固定到屏幕底部,并在最后两项之间留出空白。所以我添加了一个垫片来帮助解决这个问题。

然而,这会导致错误,因为 SingleChildScrollView 不喜欢 Spacer。我已经尝试了我所知道的一切,但我找不到满足这两个条件且没有错误的布局。有人可以建议一个解决方案吗?

下面的代码 - 您可能需要更改容器的大小(或数量)才能在您的设备上演示该问题。

class _TestMain extends State<TestMain> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SafeArea(
        child: Container(
          child: SingleChildScrollView(
            child: Column(
              children: [
                Container(
                  color: Colors.blue,
                  height: 100,
                ),
                Container(
                  color: Colors.yellow,
                  height: 100,
                ),
                Container(
                  color: Colors.green,
                  height: 100,
                ),
                Container(
                  color: Colors.pink,
                  height: 100,
                ),
                // comment out these four containers to demonstrate issue
                Container(
                  color: Colors.blue,
                  height: 100,
                ),
                Container(
                  color: Colors.yellow,
                  height: 100,
                ),
                Container(
                  color: …
Run Code Online (Sandbox Code Playgroud)

dart flutter flutter-layout

5
推荐指数
1
解决办法
5760
查看次数

如何在颤动的 useEffect 中显示对话框/ Snackbar?

我试图在 useEffect 挂钩内显示 Snackbar,但它显示错误。如果我理解得很好,我无法从 useEffect 内部访问上下文。那么,我该怎么办呢?

这是错误:“无法侦听 HookState.initState 内继承的小部件。请改用 HookState.build”。

    useEffect(() {

      const snackBar = SnackBar(
        content: Text('Test'),
      );

      ScaffoldMessenger.of(context).showSnackBar(snackBar);

      return;
    }, []);
Run Code Online (Sandbox Code Playgroud)

我正在尝试从 useEffect 内部显示一个对话框。

flutter flutter-hooks

5
推荐指数
1
解决办法
590
查看次数

我如何在两个类之间导航,其中一个类需要传递数据?颤动中

我有2个类,其中一个类需要传递数据,而B类没有这个类的数据,比如登录类将注册数据传递给A类,但是B类没有这个数据,但是需要访问到A级?

我用了Navigation.of(context).pushNamed(context, classB.id)

但不工作

dart flutter flutter-layout flutter-web

4
推荐指数
1
解决办法
1331
查看次数

使用多个图像创建链式颤动动画

我想创建一个带有动画的小部件,该动画由显示一系列淡入淡出的图像组成,并在完成后重复。像这样的附加动画:

颤动动画

由于我是 Flutter 新手,我想知道最好的方法是什么。

flutter flutter-layout flutter-animation

4
推荐指数
1
解决办法
5690
查看次数

Flutter:带有 Gridview 的卡片

我是 flutter 新手,我想做这个设计,我花了一段时间才找到要使用的内容,但每次我尝试对其进行编码并使用 Listview 时,它都会给我错误,或者卡片不与 Gridview 对齐。

图像

gridview flutter flutter-layout

4
推荐指数
1
解决办法
9621
查看次数

升级到 Flutter 3.10 后,Flutter 键盘填充不起作用。Flutter 3.10中如何防止BottomSheet被键盘重叠?

我使用 MediaQuery.of(context).viewInsets.bottom 根据键盘大小确定填充。升级到 Flutter 3.10 后,现在底板与键盘重叠了!

void onTotalsButtonPressed() {
    showModalBottomSheet(
      context: context,
      builder: (context) => SingleChildScrollView(
        padding:
            EdgeInsets.only(bottom: MediaQuery.of(context).viewInsets.bottom),
        child: AddProduct(
          items: Provider.of<Products>(context, listen: false).searchItems,
          type: OrderTypes.sales,
        ),
      ),
      isScrollControlled: true,
    );
  }
Run Code Online (Sandbox Code Playgroud)

当我在另一台机器上使用 Flutter 3.7.12 构建应用程序时,它运行良好,并且填充是根据键盘状态动态确定的!

dart flutter

4
推荐指数
1
解决办法
419
查看次数

Flutter 为 CustomPaint 添加边框

我用来CustomPainter创建一个三角形。我想创建一个带边框的三角形。

我目前的结果:
在此输入图像描述

我正在寻找什么:
在此输入图像描述

我的 PaintTriangle 课程:

class PaintTriangle extends CustomPainter {
  final Color backgroundColor;

  PaintTriangle({
    required this.backgroundColor,
  });

  @override
  void paint(Canvas canvas, Size size) {
    final y = size.height;
    final x = size.width;

    final paint = Paint()..color = backgroundColor;
    final path = Path()
      ..moveTo(0, y)
      ..lineTo((x / 2), (y / y))
      ..lineTo(x, y);

    canvas.drawPath(path, paint);
  }

  @override
  bool shouldRepaint(CustomPainter oldDelegate) => true;
}
Run Code Online (Sandbox Code Playgroud)

flutter flutter-layout

3
推荐指数
1
解决办法
1351
查看次数

如何在 Flutter 中给带有装饰的容器添加波纹效果?

我想为自定义添加连锁反应Container。我已经使用InkwellMaterial小部件来实现此行为,但它不起作用。代码如下:

@override
  Widget build(BuildContext context) {
    return Center(
      child: Material(
        color: Colors.transparent,
        child: InkWell(
          onTap: (){},
          child: Container(
            width: 150,
            height: 100,
            decoration: BoxDecoration(
              border: Border.all(color: Colors.red, width: 2),
              borderRadius: BorderRadius.circular(18),
              color: Colors.deepPurpleAccent,
            ),
            alignment: Alignment.center,
            child: Text(
              "A box container",
              style: TextStyle(color: Colors.white),
            ),
          ),
        ),
      ),
    );
  }
Run Code Online (Sandbox Code Playgroud)

结果是:

在此输入图像描述

我还使用了透明颜色Container和紫色,Material如下所示:

@override
  Widget build(BuildContext context) {
    return Center(
      child: Material(
        color: Colors.deepPurpleAccent,
        child: InkWell(
          onTap: () {},
          child: Container( …
Run Code Online (Sandbox Code Playgroud)

button flutter flutter-layout flutter-container

3
推荐指数
1
解决办法
2773
查看次数