Я буду рад помочь вам в этом. Вот пример того, как вы можете создать несколько загрузок изображений во Flutter с помощью пакета flutter_image_picker:
-
Добавьте зависимость
flutter_image_pickerв файлpubspec.yaml:dependencies: flutter_image_picker: ^0.8.4+4 -
Импортируйте необходимые пакеты:
import 'dart:io'; import 'package:flutter/material.dart'; import 'package:flutter_image_picker/flutter_image_picker.dart'; -
Создайте виджет с отслеживанием состояния, который представляет экран загрузки изображения:
class ImageUploadScreen extends StatefulWidget { @override _ImageUploadScreenState createState() => _ImageUploadScreenState(); } class _ImageUploadScreenState extends State<ImageUploadScreen> { List<File> _selectedImages = []; Future<void> _pickImages() async { List<File>? pickedImages = await FlutterImagePicker.getImages( maxImages: 5, enableCamera: true, ); if (pickedImages != null && pickedImages.isNotEmpty) { setState(() { _selectedImages = pickedImages; }); } } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('Multiple Image Upload'), ), body: Column( children: [ ElevatedButton( onPressed: _pickImages, child: Text('Select Images'), ), SizedBox(height: 16), Expanded( child: ListView.builder( itemCount: _selectedImages.length, itemBuilder: (context, index) { return Image.file(_selectedImages[index]); }, ), ), ], ), ); } } -
Используйте виджет
ImageUploadScreenв своем приложении:void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'Multiple Image Upload', theme: ThemeData( primarySwatch: Colors.blue, ), home: ImageUploadScreen(), ); } }
Этот код устанавливает базовое приложение Flutter, в котором вы можете выбрать несколько изображений с помощью пакета flutter_image_picker. Выбранные изображения отображаются в виджете ListView.