Używanie RawDialogRoute w Flutter: przewodnik i przykłady

RawDialogRoute jest klasą Flutter reprezentującą surową trasę dialogową, zapewniającą sposób wyświetlania niestandardowych okien dialogowych lub wyskakujących okienek. Ta klasa jest zwykle używana wewnętrznie przez platformę do tworzenia tras dialogowych i zarządzania nimi.

Oto przykład, jak możesz użyć RawDialogRoute do wyświetlenia niestandardowego okna dialogowego:

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('RawDialogRoute Example'),  
     ),  
      body: Center(  
        child: ElevatedButton(  
          onPressed:() {  
            showDialog(  
              context: context,  
              builder:(BuildContext context) {  
                return RawDialogRoute(  
                  context: context,  
                  barrierDismissible: true,  
                  builder:(BuildContext context) {  
                    return AlertDialog(  
                      title: Text('Custom Dialog'),  
                      content: Text('This is a custom dialog using RawDialogRoute.'),  
                      actions: [  
                        TextButton(  
                          onPressed:() {  
                            Navigator.pop(context);  
                          },  
                          child: Text('Close'),  
                       ),  
                      ],  
                   );  
                  },  
               );  
              },  
           );  
          },  
          child: Text('Open Dialog'),  
       ),  
     ),  
   );  
  }  
}  

W tym przykładzie po naciśnięciu przycisku showDialog funkcja jest używana do wyświetlenia niestandardowego okna dialogowego przy użyciu RawDialogRoute konstruktora. W oknie builder dialogowym możesz podać niestandardową treść.

Należy pamiętać, że może to być uważane za klasę niskiego poziomu iw większości przypadków RawDialogRoute wygodniejsze może być użycie klas wbudowanych AlertDialog lub do tworzenia okien dialogowych. SimpleDialog