Device preview in Flutter
device_preview è un package per Flutter che ci permette di attivare una preview per vari dispositivi.
Quindi ad esempio, ho avviato la app per Windows.
Sulla destra apparirà un "menu" in cui possiamo decidere con quale dispositivo visualizzare le schermate.
Ovviamente sono emulati, e potete anche chiuderlo/riaprirlo.
Possiamo installarlo così:
flutter pub add device_preview
Qui sotto un esempio di codice in cui aggiungiamo anche una voce custom:
import 'package:device_preview/device_preview.dart';
import 'package:flutter/material.dart';
import 'custom.dart';
void main() {
runApp(
DevicePreview(
enabled: true,
tools: const [
...DevicePreview.defaultTools,
Custom(),
],
builder: (ctx) => const MyApp(),
),
);
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
title: 'Flutter Test',
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(
seedColor: Colors.deepPurple,
),
useMaterial3: true,
),
home: const MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({super.key});
@override
State<MyHomePage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
backgroundColor: Theme.of(context).colorScheme.inversePrimary,
title: const Text('Flutter Test'),
),
body: const Center(
child: Text('CIAO'),
),
);
}
}
Questo il widget Custom:
import 'package:device_preview/device_preview.dart';
import 'package:flutter/material.dart';
class Custom extends StatelessWidget {
const Custom({super.key});
@override
Widget build(BuildContext context) {
return ToolPanelSection(
title: 'Custom',
children: [
ListTile(
title: const Text('Print in console'),
onTap: () {
print('Print dal custom!');
},
)
],
);
}
}
Enjoy!
dart flutter device_preview
Commentami!