pickMediaWithBuilder static method

Future<void> pickMediaWithBuilder({
  1. Config? config,
  2. required Widget multipleMediaBuilder(
    1. List<MediaFile> media,
    2. BuildContext context
    )?,
  3. Widget heroBuilder(
    1. String tag,
    2. MediaFile media,
    3. BuildContext context
    )?,
  4. Locale? locale,
  5. bool singleMedia = false,
  6. PageTransitionType pageTransitionType = PageTransitionType.rightToLeft,
  7. List<MediaFile>? initSelectedMedia,
  8. List<MediaFile>? extraRecentMedia,
  9. bool startWithRecent = false,
  10. required BuildContext context,
})

Implementation

static Future<void> pickMediaWithBuilder({
  Config? config,
  required Widget Function(List<MediaFile> media, BuildContext context)?
  multipleMediaBuilder,
  Widget Function(String tag, MediaFile media, BuildContext context)?
  heroBuilder,
  Locale? locale,
  bool singleMedia = false,
  PageTransitionType pageTransitionType = PageTransitionType.rightToLeft,
  List<MediaFile>? initSelectedMedia,
  List<MediaFile>? extraRecentMedia,
  bool startWithRecent = false,
  required BuildContext context,
}) async {
  final controller = _getOrCreateController();
  controller.configuration(
    config,
    onSelect: (media) {},
    startWithRecent: startWithRecent,
    heroBuilder: heroBuilder,
    multipleMediasBuilder: multipleMediaBuilder,
    initSelectedMedias: initSelectedMedia,
    extraRecentMedia: extraRecentMedia,
    isRecent: startWithRecent,
    mediaType: GalleryMediaType.all,
  );
  if (!controller.isInitialized) {
    unawaited(controller.initializeAlbums(locale: locale));
  }

  await Navigator.push(
    context,
    _buildPickerRoute(
      pageTransitionType: pageTransitionType,
      child: GalleryPickerView(
        onSelect: (media) {},
        locale: locale,
        multipleMediaBuilder: multipleMediaBuilder,
        heroBuilder: heroBuilder,
        singleMedia: singleMedia,
        config: config,
        initSelectedMedia: initSelectedMedia,
        extraRecentMedia: extraRecentMedia,
        startWithRecent: startWithRecent,
      ),
    ),
  );
}