Acceso a la cámara en Flutter

Para agregar imágenes de la cámara en flutter, usaremos el paquete image_picker . Para esto, deberá usar su dispositivo real.

Siga los pasos a continuación para mostrar las imágenes de la cámara:

Paso 1: Cree una nueva aplicación flutter.

flutter create <APP_NAME>

Paso 2: elimine el código predeterminado del archivo main.dart .

Paso 3: agregue la dependencia a su archivo pubspec.yaml :

dependencies

Paso 4: use el siguiente código en el archivo main.dart :

dardo principal:

Dart

import 'dart:io';
import 'package:flutter/material.dart';
import 'package:image_picker/image_picker.dart';
  
void main() {
  runApp(new MyApp());
}
  
class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      home: new CameraAccess(),
      debugShowCheckedModeBanner: false,
    );
  }
}
  
class CameraAccess extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return new CameraAccessState();
  }
}
  
class CameraAccessState extends State<CameraAccess> {
  File cameraFile;
  
  @override
  Widget build(BuildContext context) {
    //display image selected from gallery
    selectFromCamera() async {
      cameraFile=await ImagePicker.pickImage(
        source: ImageSource.camera,
        // maxHeight: 50.0,
        // maxWidth: 50.0,
      );
      setState(() {});
    }
  
    return new Scaffold(
      appBar: new AppBar(
        title: new Text("Camera Access"),
        backgroundColor: Colors.green,
        actions: <Widget>[
          Text("GFG",textScaleFactor: 3,)
        ],
      ),
      body: new Builder(
        builder: (BuildContext context) {
          return Center(
            child: new Column(
              mainAxisAlignment: MainAxisAlignment.center,
              children: <Widget>[
                new RaisedButton(
                  child: new Text('Select Image from Camera'),
                  onPressed: selectFromCamera
                ),
                SizedBox(
                  height: 200.0,
                  width: 300.0,
                  child: cameraFile == null
                      ? Center(child: new Text('Sorry nothing selected!!'))
                      : Center(child: new Image.file(cameraFile)),
                )
              ],
            ),
          );
        },
      ),
    );
  }
}

Producción:

Cuando no se selecciona ninguna imagen, resultará:

camera access button

Cuando se toca el botón, la cámara del móvil se abrirá para capturar la imagen como se muestra a continuación:

Cuando se captura la imagen, se mostrará en la pantalla como se muestra a continuación:

Explicación:

  • Importar paquete image_picker .
  • Cree la función asíncrona selectFromCamera() y espere la imagen de la cámara.
  • Después de cargar la imagen desde la cámara, la imagen se mostrará en la pantalla.

Publicación traducida automáticamente

Artículo escrito por singh_teekam y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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