2

I'm newly in mobile app development field.I want to know ,how to pass parameters(MaterialPageRoute) using button and click after get that data from mysql database in second page.

kavinda
  • 77
  • 8

1 Answers1

1

You can do like this, below i have mention some code.

    void main() => runApp(MyApp());
    
    class MyApp extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return MaterialApp(
          title: 'OMS ',
          theme: ThemeData(
            primarySwatch: Colors.blue,
          ),
          home: TaskList(),
        );
      }
    }
    
    class TaskList extends StatefulWidget {
      _TaskListState createState() => _TaskListState();
    }
    
    class _TaskListState extends State<TaskList> {
     
      var _textContoller = new TextEditingController(); 
      @override
      Widget build(BuildContext context) {
        return new Scaffold(
              appBar: new AppBar(
                title: Center(
                    child: Text(
                  'Task List',
                ))),
              body: new ListView(
              children: <Widget>[
               new ListTile(
               title: new TextField(
               controller: _textController),),
               new ListTile(title: new RaisedButton(child:
                new Text("NEXT"),onpressed(){
                 Navigator.push(
                context,
                MaterialPageRoute(
                    builder: (context) => NextPage(vale: _textController.text)));
                 }))
             ]
           )
        );
      }
    }
class NextPage extends StatefulWidget {
     final String value;
    NextPage(Key key ,this.value) : super (key:key)
      _NextPageState createState() => _NextPageState();
    }
    
    class _NextPageState extends State<NextPage> {
      
      @override
      Widget build(BuildContext context) {
        return new Scaffold(
              appBar: new AppBar(
                title: Center(
                    child: Text(
                  'Next Page',
                ))),
              body: new Text("${widget.value}")
        );
      }
    }
Cognisun Inc
  • 438
  • 3
  • 9