【发布时间】:2018-10-30 16:35:07
【问题描述】:
我正在使用 Flutter 进行应用开发。 我想在背景图像上叠加一个海报图像视图,就像下面的截图一样。 下面的代码 sn-p 执行此操作,但它还需要我根据海报的位置和背景图像的位置定位所有其他小部件,包括电影标题、发布日期等,这在多个设备和方向上并不可靠。有解决这个问题的例子或建议吗?
@override
Widget build(BuildContext context) {
return new Scaffold(
appBar: new PlatformAdaptiveAppBar(
title: new Text(widget.movie.title),
),
body: new Container(
constraints: new BoxConstraints.expand(),
child: new Stack(
children: <Widget>[
new Container(
child: new Image(
image: new AdvancedNetworkImage(
movieGridUtil.getUrlFromPath(widget.movie.backdrop_path,
MovieGridImageTypes.BACKDROP),
useMemoryCache: false,
useDiskCache: true)),
constraints: new BoxConstraints.expand(height: 250.0),
),
new Positioned(
left: 12.0,
top: 220.0,
child: new Image(
width: 100.0,
height: 150.0,
image: new AdvancedNetworkImage(
movieGridUtil.getUrlFromPath(widget.movie.poster_path,
MovieGridImageTypes.POSTER),
useMemoryCache: false,
useDiskCache: true),
)),
],
)),
);
}
【问题讨论】:
-
在 Column 中进行所有布局,然后将该列包装在 Stack 中,并将 Poster 添加为 stack 的第二个子项。
标签: dart flutter flutter-layout