Usando Overlay .of em Flutter: Guia e Exemplo

Overlay.of é um método estático Flutter usado para recuperar o widget OverlayState do ancestral mais próximo Overlay.

O Overlay widget é usado para criar uma pilha de widgets que podem ser exibidos sobre outros widgets em um Flutter aplicativo. O Overlay.of método permite acessar o OverlayState associado a um arquivo BuildContext.

Aqui está um exemplo de como você pode usar Overlay.of para acessar o OverlayState:

import 'package:flutter/material.dart';  
  
void main() {  
  runApp(MyApp());  
}  
  
class MyApp extends StatelessWidget {  
  @override  
  Widget build(BuildContext context) {  
    return MaterialApp(  
      home: MyHomePage(),  
   );  
  }  
}  
  
class MyHomePage extends StatelessWidget {  
  @override  
  Widget build(BuildContext context) {  
    return Scaffold(  
      appBar: AppBar(  
        title: Text('Overlay.of Example'),  
     ),  
      body: Center(  
        child: ElevatedButton(  
          onPressed:() {  
            OverlayState overlayState = Overlay.of(context);  
            OverlayEntry overlayEntry = OverlayEntry(  
              builder:(BuildContext context) {  
                return Positioned(  
                  top: 100,  
                  left: 50,  
                  child: Container(  
                    width: 100,  
                    height: 100,  
                    color: Colors.blue,  
                 ),  
               );  
              },  
           );  
            overlayState.insert(overlayEntry);  
          },  
          child: Text('Show Overlay'),  
       ),  
     ),  
   );  
  }  
}  

Neste exemplo, quando o botão é pressionado, o Overlay.of método é usado para recuperar o OverlayState associado ao atual BuildContext. Um OverlayEntry é então criado e adicionado ao overlay usando o insert método do OverlayState. Isso exibe um contêiner azul em uma posição específica sobre outros widgets.

Observe que o uso overlay requer um gerenciamento cuidadoso e, normalmente, você deve remover as entradas do overlay quando elas não forem mais necessárias para evitar vazamentos de memória.

Se houver atualizações ou alterações relacionadas à Overlay.of minha última atualização, recomendo verificar a Flutter documentação para obter as informações mais recentes.