Saltar al contenido

En Flutter ¿Cómo obtener la ruta de la imagen después de seleccionar imágenes usando el Selector de imágenes múltiples?

Solución:

Padding(
            padding: const EdgeInsets.all(18.0),
            child: InkWell(
              child: Text(
                'POST',
                style: TextStyle(fontSize: 18.0),
              ),
              onTap: () async {

 List<MultipartFile> multipart = List<MultipartFile>();

                for (int i = 0; i < images.length; i++) {
                  var path = await FlutterAbsolutePath.getAbsolutePath(images[i].identifier);

                }   

              },
            ),
          )

Estoy usando el siguiente código para seleccionar varias imágenes mediante el uso selector de archivos: ^ 2.0.7 Biblioteca. Mantenga pulsado para seleccionar varias imágenes. Una vez seleccionada la imagen, puede usar F arr para mostrar las imágenes.

List<File> f = List();

 RaisedButton(
            child: Text("Pick Image"),
            onPressed: () async {
              FilePickerResult result = await FilePicker.platform.pickFiles(
                allowMultiple: true,
                type: FileType.custom,
                allowedExtensions: ['jpg', 'png', 'jpeg'],
              );
              if (result != null) {
                f = result.paths.map((path) => File(path)).toList();
                setState(() {});
                print(f);
              }
            },
          ),

ingrese la descripción de la imagen aquí

Ejemplo de llamada a la API Para cargar imágenes y datos normales. La columna de imagen cargada debe ser arr (foto[] ).

 List<MultipartFile> newList = new List<MultipartFile>();


Future<String> ImageUpload() async {

var request = http.MultipartRequest('POST', url);
 request.headers["Authorization"] = pref.getString("token");
    request.headers["Accept"] = "application/json";
   //Image Data
  for (int i = 0; i < f.length; i++) {
      newList.add(await http.MultipartFile.fromPath('photo[]', f[i].path));
    }
    request.files.addAll(newList);
    
    Map<String, dynamic> data = Map<String, String>();
    //normal data
    data["user_id"] = user_id;
    data["project_id"] = pro_id;
    
    request.fields.addAll(data);
    var res = await request.send();
    
    if (res.statusCode == 200) {
      debugPrint("Status${res}");
      }else {
      debugPrint("status code${res}");
      }
      
    }
    

Try This You can select and upload multiple images easily. Thank you.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *