Skip to content

mtandrita/qr_code_generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

qr_code_generator

#main.dart Generates QR Code for given data import 'package:flutter/material.dart'; import 'package:qr_code_scanner_generator/generate_qr_code.dart'; import 'package:qr_code_scanner_generator/scan_qr_code.dart';

void main() { runApp(const MyApp()); }

class MyApp extends StatelessWidget { const MyApp({super.key});

// This widget is the root of your application. @override Widget build(BuildContext context) { return MaterialApp( title: 'QR Code Scanner and Generator', debugShowCheckedModeBanner: false,

  home: HomePage(),
);

} } class HomePage extends StatefulWidget { const HomePage({super.key});

@override State createState() => _HomePageState(); }

class _HomePageState extends State { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text("QR Code Scanner and Generator"), backgroundColor: Colors.amber,), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ ElevatedButton(onPressed: (){ setState(() { Navigator.of(context).push(MaterialPageRoute(builder: (context)=> ScanQrCode())); }); }, child: Text('Scan QR Code')), SizedBox(height: 40,), ElevatedButton(onPressed:(){ setState(() { Navigator.of(context).push(MaterialPageRoute(builder: (context)=>GenerateQrCode())); }); } , child: Text('Generate QR Code')) ], ), ), ); } } #generate_qr_code import 'package:flutter/material.dart'; import 'package:qr_flutter/qr_flutter.dart'; class GenerateQrCode extends StatefulWidget { const GenerateQrCode({super.key});

@override State createState() => _GenerateQrCodeState(); }

class _GenerateQrCodeState extends State { TextEditingController urlController = TextEditingController(); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text('Generate QR Code'),), body: Center( child: SingleChildScrollView( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ if (urlController.text.isNotEmpty) QrImageView(data: urlController.text, size: 200,), SizedBox(height: 10,), Container( padding: EdgeInsets.only(left: 10, right: 10), child: TextField( controller: urlController, decoration: InputDecoration( hintText: 'Enter your data', border: OutlineInputBorder(borderRadius: BorderRadius.circular(15)), labelText: 'Enter your data' ), ), ), SizedBox(height: 10,), ElevatedButton(onPressed: (){ setState(() {

            });
          }, child: Text('Generate QR Code'))

        ],
      ),
    ),
  ),
);

} } #qr_code_scanner import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_barcode_scanner/flutter_barcode_scanner.dart'; class ScanQrCode extends StatefulWidget { const ScanQrCode({super.key});

@override State createState() => _ScanQrCodeState(); }

class _ScanQrCodeState extends State { String qrResult = 'Scanned data will appear here'; Future scanQR()async{ try{ final qrCode = await FlutterBarcodeScanner.scanBarcode('#ff6666', 'Cancel', true, ScanMode.QR); if(!mounted)return; setState(() { this.qrResult = qrCode.toString(); });

}on PlatformException{
  qrResult = 'Faled to read QR Code';
}

} @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text('QR Code Scanner'),), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ SizedBox(height: 30,), Text(qrResult,style: TextStyle(color: Colors.black),), SizedBox(height: 30,), ElevatedButton(onPressed: scanQR, child: Text('Scan Code')) ], ), ),

);

} }

About

Generates QR Code for given data

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published