Použití RawDialogRoute v Flutter: Průvodce a příklady

RawDialogRoute je třída Flutter, která představuje nezpracovanou trasu dialogu a poskytuje způsob, jak zobrazit vlastní dialogy nebo vyskakovací okna. Tuto třídu obvykle interně používá framework k vytváření a správě tras dialogů.

Zde je příklad toho, jak můžete RawDialogRoute zobrazit vlastní dialogové okno:

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

V tomto příkladu, když je stisknuto tlačítko, showDialog funkce se používá k zobrazení vlastního dialogu pomocí RawDialogRoute jako tvůrce. Uvnitř builder můžete zadat svůj vlastní obsah pro dialogové okno.

Vezměte prosím na vědomí, že to RawDialogRoute může být považováno za třídu nízké úrovně a ve většině případů pro vás může být pohodlnější použít vestavěné třídy AlertDialog nebo SimpleDialog třídy pro vytváření dialogů.