我有一个列表视图,它在一个屏幕截图小部件中,每次执行一个函数时都会截取一个屏幕截图。它工作得很好,但我的问题是,在列表视图上的项目达到一定数量后(在本例中为10+),所拍摄的屏幕截图会在该数量后剪辑它们,它只需要当时屏幕上可见项目的屏幕截图。有没有办法把整个屏幕截图?代码如下:
- 屏幕截图**
body: Screenshot(
controller: screenshotController,
child: Container(
width: double.infinity,
height: double.infinity,
child: ListView(
children: [
SingleChildScrollView(
---- list items here ----
- 如何显示图像**
return showDialog(
context: context,
builder: (context) => GestureDetector(
onTap: () => Navigator.pop(context),
child: InteractiveViewer(
boundaryMargin: EdgeInsets.zero,
minScale: 1,
maxScale: 4,
child: AlertDialog(
content: Container(
width: MediaQuery.of(context).size.height / 2,
height: MediaQuery.of(context).size.height,
decoration: BoxDecoration(
image: DecorationImage(
image: NetworkImage(url), fit: BoxFit.contain)),
),
),
),
));
所以基本上,我在这里做错了什么,因为所拍摄的屏幕截图只拍摄可见屏幕的屏幕截图,而不是我试图放入代码的整个主体(它只拍摄屏幕上可见列表视图项目的图片,所有超过10个项目的内容都被剪辑)。
2条答案
按热度按时间7rtdyuoh1#
让它在列内,然后它将自动工作。
xzlaal3s2#
添加这两个属性来解决问题