标签: flutter-widget

不正确使用父数据小部件。扩展小部件必须放置在 flex 小部件内

我收到以下错误:

即,抛出了另一个异常:ParentDataWidget 的错误使用。在手机屏幕上显示错误。

 @override
  Widget build(BuildContext context) {

    return MaterialApp(
      title: widget.title,
      theme: ThemeData.light().copyWith(
        platform: _platform ?? Theme.of(context).platform,
      ),
      home: DefaultTabController(
        length: categoryNames.length,
        child: Scaffold(
        appBar: AppBar(
          title: Text(widget.title),
                 ),
        body: SafeArea(
            child: Column(
              children: <Widget>[
                Chewie(
                  controller: _chewieController,
                ),
                TabBar(
                  labelColor:Colors.black,
                  tabs: categoryNames,
                ),
                Expanded(
                  child: TabBarView(
                    children: [
                      ImageList()
                    ],
                  ),
                )
                /*TabBarView(
                  children: [
                    Icon(Icons.directions_car),
                    Icon(Icons.directions_transit),
                    Icon(Icons.directions_bike),
                  ],
                )*/
              ],
            )
        ),
      ),
      ),
    );
  }
Run Code Online (Sandbox Code Playgroud)

这是我的代码,请检查并让我知道问题。

widget dart flutter flutter-layout flutter-widget

116
推荐指数
8
解决办法
13万
查看次数

查找停用的小部件的祖先是不安全的

我是 Flutter 的新手,我正在尝试使用 Dialog 接收数据。当单击 textField 时,会出现 image2 的错误...

布局的图像 错误的图像

show(BuildContext context){

    var dialog = Dialog(
      child: Container(
        margin: EdgeInsets.all(8.0),
        child: Form(
          child: Column(
            mainAxisSize: MainAxisSize.min,
            children: <Widget>[
              TextFormField(
                decoration: InputDecoration(
                    labelText: "Insira o número de telefone",
                    border: OutlineInputBorder(
                        borderRadius: BorderRadius.all(Radius.circular(2.0)))),
              ),
              Row(
                mainAxisAlignment: MainAxisAlignment.end,
                children: <Widget>[
                  FlatButton(
                      onPressed: () {
                        Navigator.of(context).pop();
                      },
                      child: Text("Cancelar")),
                  FlatButton(
                      onPressed: () {
                        Navigator.of(context).pop();
                      },
                      child: Text("Aceitar"))
                ],
              )
            ],
          ),
        ),
      ),
    );

    showDialog(context: context,builder: (context){
      return dialog;
    });
  }
Run Code Online (Sandbox Code Playgroud)

这是我的代码。

I/flutter (31032): Looking …
Run Code Online (Sandbox Code Playgroud)

dialog dart flutter flutter-widget

54
推荐指数
6
解决办法
8万
查看次数

在 Flutter 中,如何将数据传递到无状态 Widget?

我正在尝试构建我的第一个 Flutter 应用程序,但在将数据传递到无状态小部件时遇到了困难。我有以下课程:

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      title: 'App Title',
      theme: new ThemeData(
        primarySwatch: Colors.green,
      ),
      home: new MainBody(),
    );
  }
}


class MainBody extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      body: new Padding(
        padding: const EdgeInsets.only(left: 20.0, right: 20.0),
        child: new Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            new TimeCheck(),
          ],
        ),
      ),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

TimeCheck是一个Stateful Widget。基本上,我希望能够在开始时设置一些值,然后将它们传递给TimeCheck, via MainBody。我读到的所有内容都显示了如何将数据传递到 中Stateful …

flutter statelesswidget flutter-widget

28
推荐指数
3
解决办法
3万
查看次数

Flutter 如何滚动到 SliverList 中的特定项目位置?

我有一个SliverListwith SliverChildBuilderDelegate,我的问题是我无法设置ScrollControllerSliverList因为我想控制我的列表的滚动,我正在寻找滚动到列表中的特定项目(非常大),通常ListView这项工作很容易,我我想知道为什么没有像这样的controller财产?SliverListListView

注意我知道CustomScrollViewcontroller属性并且我已经测试过,但这将控制整个视口,而不仅仅是列表

 @override
  Widget build(BuildContext context) {
    MainState m = Provider.of<MainState>(context, listen: false);
    return DefaultTabController(
      length: m.itemCategoryList.length,
      child: Scaffold(
          // appBar: _createAppBar(),
          body: Builder(builder: (context) => _createBody(context))),
    );
  }

  AppBar _createAppBar() {
    MainState m = Provider.of<MainState>(context);

    return AppBar(
      title: Text(
        m.selectedPartner.fullname,
        style: Theme.of(context).textTheme.display3,
      ),
      leading: IconButton(
        icon: Icon(Icons.arrow_back),
        onPressed: () {
          Navigator.pop(context);
        },
      ),
    );
  }

  _createBody(BuildContext context) {
    MainState …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-sliver flutter-widget

15
推荐指数
1
解决办法
4837
查看次数

如何自定义颤振中的开关按钮

在我的应用程序中,我希望开关用于在开/关之间切换设置,分别为真/假。当我去构建它时,结果发现flutter提供了一个默认开关,但这不是我想要的,我想根据我的UI对其进行自定义

这是颤振开关按钮:-

在此处输入图片说明

这是我想要的:-

在此处输入图片说明

我怎样才能让我的 UI 成为可能?

customization dart flutter flutter-widget

12
推荐指数
4
解决办法
5万
查看次数

Flutter:ButtonStyle() 和 .styleFrom() 有什么区别

我是 Flutter 的新手。

这是我的代码,

对于 ElevatedButton,

ElevatedButton(
                  onPressed: () {
                    // Add your onPressed code here!
                  },
                  child: Text("Login"),
                  style: ButtonStyle(
                      backgroundColor: MaterialStateProperty.all<Color>(
                          AppColors.SecondaryColor),
                      foregroundColor: MaterialStateProperty.all<Color>(
                          AppColors.PrimaryColor))),
Run Code Online (Sandbox Code Playgroud)

对于轮廓按钮,

OutlinedButton(
                  onPressed: () {
                    // Add your onPressed code here!
                  },
                  child: Text("Register Now"),
                  style: OutlinedButton.styleFrom(
                    side: BorderSide(width: 2, color: AppColors.SecondaryColor),
                  ))
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么我必须对OutlinedButton使用styleFrom而不是ButtonStyle?如果用ButtonStyle替换OutlinedButton.styleFrom,则会出错。为什么?

我对ButtonStylestyleFrom的使用感到非常困惑。因为互联网上的一些示例使用ButtonStyle而一些使用styleFrom

flutter flutter-widget

12
推荐指数
2
解决办法
9981
查看次数

Flutter:在布局期间对象被赋予无限大小

我正在解决一个问题,我收到错误“对象在布局期间被赋予了无限大小”和“这可能意味着它是一个试图尽可能大的渲染对象,但它被放在另一个渲染中允许其子项选择自己尺寸的对象。”。

我明白这意味着什么,但不知道我如何仍然保持我当前的小部件树响应(它在运行时呈现,所以对于前端用户来说似乎没有问题)同时仍然解决这个问题。目前我没有设置某些东西的大小来保持响应,并希望尽可能避免小部件的硬编码大小

非常感谢任何正确方向的帮助或指示:)

这是我当前的代码:

    class EditArtikel extends StatefulWidget {
  final String path;

  EditArtikel({this.path});

  @override
  _EditArtikelState createState() => _EditArtikelState(path: path);
}

class _EditArtikelState extends State<EditArtikel> {
  final String path;

  _EditArtikelState({this.path});

  final titleController = TextEditingController();
  final subtitleController = TextEditingController();
  final authorController = TextEditingController();
  final textController = TextEditingController();

  File imageFile;

  List<DropdownMenuItem<dynamic>> dropdownMenuItemFromList() {
    List<DropdownMenuItem<dynamic>> itemsList = [];
    for (var i = 1; i < currentTags.length; i++) {
      itemsList.add(new DropdownMenuItem(
        child: Text(currentTags[i]),
        value: currentTags[i],
      ));
    }
    return itemsList; …
Run Code Online (Sandbox Code Playgroud)

layout dart flutter flutter-layout flutter-widget

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

创建内部带有透明孔的小部件

如何创建带有透明孔的半透明背景?我尝试使用具有不同混合模式、堆栈、ClipRect、滤色器的装饰和前景装饰,但没有任何效果。我会欣赏任何想法。谢谢!

半透明背景,里面有透明孔

flutter flutter-layout flutter-widget

11
推荐指数
1
解决办法
1712
查看次数

Flutter:[cloud_firestore/unknown] NoSuchMethodError:null 上的无效成员:'includeMetadataChanges'(Flutter Web)

我正在尝试从 Friebase-firestore 获取数据,然后将其转换为模型,我对另一个项目(网络项目)使用了相同的代码和方法,它工作正常,但对于这个项目它不起作用,我不知道为什么。我升级了 flutter 版本,运行 Flutter doctor ,环境设置没有问题。这是代码:

class dbService{

static final CollectionReference myCollection = 
  FirebaseFirestore.instance.collection('myCollection');

static Future<myModel> getMyInfo() async{
myModel sanaa ;
print('this line to print');
final QuerySnapshot myInfo =await myCollection.limit(1).get();
myInfo.docs.forEach((element) {
  print(element.data()['name']);
 sanaa= new myModel(
      name:element.data()['name'].toString(),
      title: element.data()["title"].toString(),
      img: element.data()['img'].toString(),
     );
  print('\n print  ------ ');
  print(element.data()['name']);
  print('   that is');
}

);
return sanaa;

}
}
class dbManager{
 Stream<myModel> myInfoStream() async*{
 yield await dbService.getMyInfo();
 }
}
   class _aboutStateState extends State<aboutState> { 
   Stream stream ;
   dbManager mng = new …
Run Code Online (Sandbox Code Playgroud)

dart firebase flutter google-cloud-firestore flutter-widget

11
推荐指数
1
解决办法
3692
查看次数

颤动验证单选按钮

如何将验证器函数添加到 RadioButtons 列表中,以便在用户提交后对其进行验证(如TextFormFields使用) ?_formKey.currentState.validate()Form

flutter flutter-widget

10
推荐指数
1
解决办法
1万
查看次数