Introduce a headerWidget to gallery
This commit is contained in:
parent
6469733ef0
commit
2a4d64f195
1 changed files with 12 additions and 2 deletions
|
@ -23,12 +23,14 @@ class Gallery extends StatefulWidget {
|
|||
final Future<void> Function() onRefresh;
|
||||
final SelectedFiles selectedFiles;
|
||||
final String tagPrefix;
|
||||
final Widget headerWidget;
|
||||
|
||||
Gallery({
|
||||
this.syncLoader,
|
||||
this.asyncLoader,
|
||||
this.reloadEvent,
|
||||
this.onRefresh,
|
||||
this.headerWidget,
|
||||
@required this.selectedFiles,
|
||||
@required this.tagPrefix,
|
||||
});
|
||||
|
@ -108,7 +110,8 @@ class _GalleryState extends State<Gallery> {
|
|||
initialScrollOffset: _scrollOffset,
|
||||
);
|
||||
final list = ListView.builder(
|
||||
itemCount: _collatedFiles.length + 1, // h4ck to load the next set
|
||||
itemCount:
|
||||
_collatedFiles.length + (widget.headerWidget == null ? 1 : 2), // h4ck
|
||||
itemBuilder: _buildListItem,
|
||||
controller: _scrollController,
|
||||
cacheExtent: 1000,
|
||||
|
@ -146,7 +149,14 @@ class _GalleryState extends State<Gallery> {
|
|||
}
|
||||
return loadWidget;
|
||||
}
|
||||
var files = _collatedFiles[index];
|
||||
var fileIndex = index;
|
||||
if (widget.headerWidget != null) {
|
||||
if (index == 0) {
|
||||
return widget.headerWidget;
|
||||
}
|
||||
fileIndex--;
|
||||
}
|
||||
var files = _collatedFiles[fileIndex];
|
||||
return Column(
|
||||
children: <Widget>[_getDay(files[0].creationTime), _getGallery(files)],
|
||||
);
|
||||
|
|
Loading…
Add table
Reference in a new issue