pickAssetsWithDelegate<Asset, Path, PickerProvider extends AssetPickerProvider<Asset, Path> > static method
Future<List<Asset> ?>
pickAssetsWithDelegate<Asset, Path, PickerProvider extends AssetPickerProvider<Asset, Path> >(
- BuildContext context, {
- required AssetPickerBuilderDelegate<
Asset, Path> delegate, - required PickerProvider provider,
- Curve routeCurve = Curves.easeIn,
- Duration routeDuration = const Duration(milliseconds: 300),
Call the picker with provided delegate
and provider
.
通过指定的 delegate
和 provider
调用选择器
Implementation
static Future<List<Asset>?> pickAssetsWithDelegate<Asset, Path,
PickerProvider extends AssetPickerProvider<Asset, Path>>(
BuildContext context, {
required AssetPickerBuilderDelegate<Asset, Path> delegate,
required PickerProvider provider,
bool useRootNavigator = true,
Curve routeCurve = Curves.easeIn,
Duration routeDuration = const Duration(milliseconds: 300),
}) async {
await permissionCheck();
final Widget picker = ChangeNotifierProvider<PickerProvider>.value(
value: provider,
child: AssetPicker<Asset, Path>(
key: Constants.pickerKey,
builder: delegate,
),
);
final List<Asset>? result = await Navigator.of(
context,
rootNavigator: useRootNavigator,
).push<List<Asset>>(
AssetPickerPageRoute<List<Asset>>(
builder: picker,
transitionCurve: routeCurve,
transitionDuration: routeDuration,
),
);
return result;
}