这里我必须使用 pdfImageFromImageProvider 函数来无状态小部件。那么,是否可以使用无状态小部件来解决这个问题?
Future<Widget> getWidgetAsync(double size) async {
PdfImage val = await pdfImageFromImageProvider(
pdf: pdf.document,
image: fw.AssetImage('assets/' + iconPath),
);
return Container(
width: size,
height: size,
decoration: BoxDecoration(
color: layoutbg,
shape: BoxShape.circle,
),
child: Image(val),
);
}
你的方法必须返回
Future<Widget>
,因为我理解你的问题的标题是你的错误,这意味着你返回的是Widget
而不是Future<Widget>
。为此,您应该将您的小部件包装在 Future 中,如下所示:
Future<Widget> getWidgetAsync(double size) async {
PdfImage val = await pdfImageFromImageProvider(
pdf: pdf.document,
image: fw.AssetImage('assets/' + iconPath),
);
return Future.value(Container(
width: size,
height: size,
decoration: BoxDecoration(
color: layoutbg,
shape: BoxShape.circle,
),
child: Image(val),
));
希望这会起作用。