Όπως όλοι γνωρίζουμε Η σημασία ενός φακού σε ένα κινητό τηλέφωνο Είναι ένα από τα πιο πολύτιμα αξεσουάρ του τηλεφώνου μας. μπορούμε να το χρησιμοποιήσουμε ως βοηθητικό φακό για να περάσουμε τη νύχτα, και μπορεί επίσης να χρησιμοποιηθεί για τη λήψη φωτογραφιών με τον απαραίτητο φωτισμό. Σε αυτό το γρήγορο σεμινάριο, θα μάθουμε για τον έλεγχο του φακού της κάμερας με φτερούγισμα.
Έχουμε ένα πακέτο με το όνομα φως πυρσών διαθέσιμο σε pub.dev για να δουλέψετε με φακό.
Εισαγάγετε τη βιβλιοθήκη στον κώδικα βελών μας
import 'package:torch_light/torch_light.dart';
Ελέγξτε ότι η συσκευή έχει φακό
Το παρακάτω απόσπασμα χρησιμοποιείται για τον έλεγχο της διαθεσιμότητας του φακού σε συσκευές
try {
final isTorchAvailable = await TorchLight.isTorchAvailable();
} on Exception catch (_) {
// Handle error
}
Ενεργοποιήστε το Torch
Η ακόλουθη μέθοδος χρησιμοποιείται για την ενεργοποίηση του φακού
try {
await TorchLight.enableTorch();
} on Exception catch (_) {
// Handle error
}
Απενεργοποιήστε το Torch
Η ακόλουθη μέθοδος χρησιμοποιείται για την απενεργοποίηση του φακού
try {
await TorchLight.disableTorch();
} on Exception catch (_) {
// Handle error
}
Το βασικό παράδειγμα ενεργοποίησης ή απενεργοποίησης φακού μπορεί να υλοποιηθεί προσθέτοντας τον ακόλουθο κώδικα κύριος.βέλος αρχείο
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:torch_light/torch_light.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: const MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({Key? key}) : super(key: key);
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Flashlight App"),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
ElevatedButton(
onPressed: () {
_turnOnFlash(context);
}, child: Text("Flashlight Turn ON"),),
ElevatedButton(onPressed: () {
_turnOffFlash(context);
}, child: Text("Flashlight Turn OFF")),
],
),
),
);
}
Future<void> _turnOnFlash(BuildContext context) async {
try {
await TorchLight.enableTorch();
} on Exception catch (_) {
_showErrorMes('Could not enable Flashlight', context);
}
}
Future<void> _turnOffFlash(BuildContext context) async {
try {
await TorchLight.disableTorch();
} on Exception catch (_) {
_showErrorMes('Could not enable Flashlight', context);
}
}
void _showErrorMes(String mes, BuildContext context) {
ScaffoldMessenger.of(context)
.showSnackBar(SnackBar(content: Text(mes)));
}
}
Αν κοιτάξουμε τον παραπάνω κώδικα, θα παρατηρήσουμε ότι συμπεριλάβαμε δύο κουμπιά για την ενεργοποίηση και απενεργοποίηση του φακού. Η μέθοδος σεβασμού θα καλείται όταν κάνετε κλικ στο κουμπί. Εάν υπάρχει σφάλμα χρόνου εκτέλεσης, το γραφικό στοιχείο της γραμμής σνακ θα το εμφανίσει.
Η παρακάτω εικόνα δείχνει το Ui

Για περισσότερες πληροφορίες κάντε κλικ εδώ
Ευχαριστώ για την ανάγνωση… 🙂