我想创建一个图库页面。
我需要它来动态捕获图像,就像某些小部件提供的builder
方法...
我也希望它可以包装和缩放这些图像,具体取决于设备/屏幕的大小。
我目前有一个CustomScrollView作为页面的主体-我一直使用它来放置页眉/导航栏,页脚等。>
我很确定我可以在此CustomScrollView中使用SliverGrid,但是我不知道该怎么做。
这是布局的示例,并显示了我希望网格移动到的位置:
class GalleryPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: primaryBlack,
drawer: NavDrawer(),
body: Scrollbar(
child: CustomScrollView(
slivers: <Widget>[
SliverNavBar(
backgroundImage: Image.asset(
'assets/images/cabarats_gallery.jpg',
fit: BoxFit.cover,
),
expandedHeight: 200,
),
SliverList(
delegate: SliverChildListDelegate(
[
ColorBoxRow(
color1: primaryLightBrown,
color2: primaryBlack,
color3: primaryRed,
color4: primaryBrown,
),
Column(
children: <Widget>[
SizedBox(height: 50),
Text(
"PHOTOS DE RATS",
style: TextStyle(
color: primaryTextColor,
fontSize: 25,
fontFamily: 'LemonMilk',
),
),
SizedBox(height: 50),
],
),
// DYNAMIC GRID HERE
// DYNAMIC GRID HERE
FollowBar(
color: primaryBrown,
),
Footer(
color: primaryRed,
)
],
),
)
],
),
),
);
}
}
我想创建一个图库页面。我需要它来动态地捕获图像,就像某些小部件提供的builder方法一样。我也希望它可以包装并根据...
感谢@pskink和其他一些人,这就是我创建画廊网格的方式。