我正在开发一个复杂的 Web 应用程序,其中我有时需要从后端 API 获取数据。有时,我需要在 Future Builder 中调用 2 个 future 函数来使用它们的值。然而,它使代码变得混乱,因为对于每个 FutureBuilder,我需要检查它是否有数据并返回小部件。看起来像这样。
return FutureBuilder<object>(
future: func1(),
builder:(context, AsyncSnapshot<object> snapshot1){
if(snapshot1.hasData){
return FutureBuilder<object>(
future: func2(),
builder:(context, AsyncSnapshot<object> snapshot2){
if(snapshot2.hasData){
return widget;
}else{
return CircularProgressIndicator();
}
}
),
}else{
return CircularProgressIndicator();
}
}
);
Run Code Online (Sandbox Code Playgroud)
还有其他更简单的方法吗?我只能使用一个 FutureBuilder,这样我就不必每次都返回小部件,即(CircularProgressIndicator)。谢谢。
flutter flutter-layout flutter-web flutter-bloc flutter-futurebuilder
Drawer当我旋转屏幕时底部溢出。
Container(约束:BoxConstraints(maxHeight:300,),装饰:BoxDecoration(borderRadius:BorderRadius.all(Radius.circular(20)),),子:WebView(initialUrl:'https: //flutter.io ',)) ,
cornerradius dart flutter flutter-dependencies flutter-layout
注意:此小部件是另一列的子项
我需要在 Column 内使用 ListView.builder 但要在 Column 内使用它我需要用 Container 包装它不仅我需要设置高度,
这里我使用 MediaQuery.of(context).size.height 并且它可以工作,
但是有一个问题,它显示A RenderFlex 在底部溢出了 226 个像素。
如何避免呢?
Column(
children: <Widget>[
getTopWidget(),
Container(
height: MediaQuery.of(context).size.height,
width: MediaQuery.of(context).size.width,
child: ListView.builder(
itemCount: shapShot.data.length,
itemBuilder: (context,index){
return EventCard(
title: shapShot.data[index].title,
details: shapShot.data[index].details,
imageUrl: shapShot.data[index].imageUrl,
);
}),
),
],
);
Run Code Online (Sandbox Code Playgroud)
我试过灵活,但没有奏效
当尝试使用Expanded它时会出现以下错误
应用截图
RenderBox 未布局:RenderRepaintBoundary#76ded NEEDS-LAYOUT NEEDS-PAINT 'package:flutter/src/rendering/box.dart':断言失败:第 1695 行 pos 12:'hasSize'
父类代码
import 'dart:collection';
import 'package:devaayanam/DevaayanamApp/devaayanam_app_communities.dart';
import 'package:devaayanam/DevaayanamApp/devaayanam_app_home_page.dart';
import 'package:devaayanam/DevaayanamApp/devaayanam_app_temples_listing.dart';
import 'package:devaayanam/DevaayanamApp/devaayanam_app_videos.dart';
import 'package:flutter/material.dart';
import '../GradientAppBar.dart';
import …Run Code Online (Sandbox Code Playgroud) 我想使用 Flutter 创建一个带有垂直和底部导航选项卡的屏幕,我测试了两种方法: