Eseguire funzioni a fine caricamento di un widget in Flutter

Mattepuffo's logo
Eseguire funzioni a fine caricamento di un widget in Flutter

Eseguire funzioni a fine caricamento di un widget in Flutter

Supponiamo di voler eseguire una funzione appena un widget, iin Flutter, viene caricato.

Nulla di più facile con addPostFrameCallback.

Qui sotto un esempio:

import 'package:flutter/material.dart';

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

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Test',
      debugShowCheckedModeBanner: false,
      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
  void initState() {
    super.initState();
    WidgetsBinding.instance
        .addPostFrameCallback((_) => _onWidgetLoaded(context));
  }

  void _onWidgetLoaded(BuildContext context) {
    print('FINITO!');
    print(context);
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text("TEST"),
      ),
      body: const Center(
        child: Text('CIAO!'),
      ),
    );
  }
}

Enjoy!


Condividi

Commentami!