通过 API,我检索对象的数据——包括它的 url。我在一个屏幕上显示带有 url (Image.Network()) 的图像。现在,单击列表上的此图像后,我想移至单个图像视图-如何将图像而不是 url 传递到新视图,以便应用程序不必从 url 下载它再次?
问问题
1533 次
2 回答
1
您可以像这样将图像传递给其他类
Navigator.push(
context, MaterialPageRoute(builder: (context) => OtherClass(data: image)));
并在其他类中接收图像
var data;
OtherClass({Key key, @required this.data}) : super(key: key);
于 2020-04-08T10:46:34.720 回答
0
我的代码:
onTap: () {
Navigator.push(context, MaterialPageRoute(builder: (_) {
return DetailScreen(url: users[index].url);
}));
},
[...]
class DetailScreen extends StatelessWidget {
final String url;
DetailScreen({Key key, @required this.url})
: assert(url != null),
super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
body: GestureDetector(
child: Center(
child: PhotoView(
imageProvider: NetworkImage(url),
)
),
onTap: () {
Navigator.pop(context);
},
),
);
}
}
于 2020-04-08T15:09:52.980 回答