图像加载不正确损坏的图像
PdfImage image = new PdfImage.file(
doc.document,
bytes: (File(field.imagename).readAsBytesSync()),
);
如何使用await getContentlist函数作为异步。下面的函数调用
doc.addPage(
pw.MultiPage(
maxPages: 100,
pageTheme: _buildTheme(
pageFormat,
),
header: _buildheader2,
footer: _buildfooter2,
build: (pw.Context context) => getContentlist(context),
),
);
下面是函数
List<pw.Widget> getContentlist(context) {
List<pw.Widget> contentlist = [];
contentlist.add(pw.SizedBox(height: 20));
contentlist.add(_contentheader2(context));
return contentlist;
}
发布于 2020-06-27 03:05:18
我认为你需要问两个不同的问题
对于第二部分,如果build
与Flutter小部件build()
方法无关,您只需修改您的代码片段,使其异步
build: (pw.Context context) async => getContentlist(context),
但如果与小部件构建相关,则需要使用等待未来状态更改并重新构建小部件的FutureBuilder小部件
FutureBuilder<String>(
future: _yourFuture,
builder: (BuildContext context, AsyncSnapshot<String> snapshot) {
List<Widget> children;
if (snapshot.hasData) {
// return widget that shows data
} else if (snapshot.hasError) {
// return widget that shows erro
}
// by default show progress indication
return Center(
child: CircularProgressIndicator()
);
},
),
请随时在评论中与我联系
https://stackoverflow.com/questions/62601080
复制相似问题