【问题标题】:Too many positional arguments: 0 expected, but 2 found. Try removing the extra positional arguments, or specifying the name for named arguments位置参数太多:预期为 0,但找到了 2 个。尝试删除额外的位置参数,或指定命名参数的名称
【发布时间】:2021-07-17 14:40:56
【问题描述】:

我希望主页有一个自定义的应用栏,我使用一个容器来制作它。 HomePage 小部件中包含以下小部件: 1.HomepageAppbar(), 2.首页标题(), 3. 还有一个扩展的小部件。

我在使用 vs 代码和颤振方面遇到了问题。

请帮忙。

这是我下面的代码:


import 'package:flutter/material.dart';

// * importing homepage components
import 'package:mar_kit/pages/homepage/widgets/heading.dart';
import 'package:mar_kit/pages/homepage/widgets/homepage_appbar.dart';

class Homepage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Column(
      HomepageAppbar(),
      HomepageHeading(),
    );
  }
}


这是来自其他两个文件

import 'package:flutter/material.dart';

class HomepageAppbar extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return SafeArea(
      child: Padding(
        padding: const EdgeInsets.symmetric(horizontal: 10, vertical: 5),
        child: Container(
          // * this will have a height of 100 and will function as an appbar
          height: 30,
          child: Row(
            mainAxisAlignment: MainAxisAlignment.spaceBetween,
            children: [
              Row(
                children: [
                  Text(
                    'Madanrting, Shillong',
                    style: TextStyle(fontSize: 16, fontWeight: FontWeight.bold),
                  ),
                  Icon(Icons.arrow_drop_down),
                ],
              ),
              Row(
                children: [
                  Icon(
                    Icons.search,
                    size: 30.0,
                  ),
                  SizedBox(
                    width: 15.0,
                  ),
                  Icon(
                    Icons.notifications,
                    size: 30.0,
                  ),
                ],
              ),
            ],
          ),
        ),
      ),
    );
  }
}


import 'package:flutter/material.dart';

class HomepageHeading extends StatelessWidget {
  var style = TextStyle(fontSize: 20, fontWeight: FontWeight.bold);

  @override
  Widget build(BuildContext context) {
    return Padding(
      padding: const EdgeInsets.symmetric(horizontal: 10),
      child: Column(
        crossAxisAlignment: CrossAxisAlignment.start,
        children: [
          Text(
            'Hi, Moneymaker.',
            style: style,
          ),
          Text(
            'Welcome back, new products below',
            style: style,
          )
        ],
      ),
    );
  }
}


【问题讨论】:

标签: flutter dart


【解决方案1】:

我知道如何删除上述问题,所以我在这里回答我自己的问题。

这是上述代码的解决方案。我只需要将列放入容器中

class Homepage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Container(
      child: Column(
        children: [
          HomepageAppbar(),
          HomepageHeading(),
        ],
      ),
    );
  }
}

【讨论】:

  • Container() 在这里并不重要。在第一个屏幕截图中,您错过了 children:[] 属性
猜你喜欢
  • 2021-11-10
  • 2021-10-16
  • 2021-01-12
  • 2020-06-15
  • 1970-01-01
  • 2019-11-03
  • 2021-09-21
  • 2022-07-20
  • 2021-11-09
相关资源
最近更新 更多