Utilizarea RawDialogRoute în Flutter: Ghid și exemple

RawDialogRoute este o clasă Flutter care reprezintă un traseu de dialog brut, oferind o modalitate de a afișa dialoguri personalizate sau ferestre pop-up. Această clasă este utilizată de obicei intern de cadru pentru a crea și gestiona rutele de dialog.

Iată un exemplu despre cum ați putea utiliza RawDialogRoute pentru a afișa un dialog personalizat:

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'),  
       ),  
     ),  
   );  
  }  
}  

În acest exemplu, atunci când butonul este apăsat, showDialog funcția este utilizată pentru a afișa un dialog personalizat folosind ca RawDialogRoute generator. În interiorul builder, puteți furniza conținut personalizat pentru dialog.

Vă rugăm să rețineți că RawDialogRoute ar putea fi considerată o clasă de nivel scăzut și s-ar putea să vi se par mai convenabil să utilizați clasele încorporate AlertDialog sau SimpleDialog pentru a crea dialoguri în majoritatea cazurilor.