title: Flutter: how to use Navigator PushNamed to send required parameters for Screen Constructor
body: <p>I have a route map from which I call my screens in flutter. I need to pass three parameters to the constructor method of the next screen. I want to use the Navigator.pushNamed() but it doesn't seem to work when I use the arguments property. </p>
  
  <pre><code>//Screen to build 
  class ResultPage extends StatelessWidget{
  ResultPage(
    {@required this.calc1Result,
    @required this.calc2Text,
    @required this.interpretation});
  
    final String calc1Result;
    final String calc2Text;
    final String interpretation;
  
     @override
     Widget build(BuildContext context) {  //etc.. etc... }
  
    --------------------------------------------------------------------------
  </code></pre>
  
  <p>Then I need to call this screen from another page doing this: </p>
  
  <pre><code>  //Call to ResultPage from another screen
    Calculator calculator = Calculator(param1: param1, param2: param2);
  
  
     Navigator.pushNamed(context, 'resultPage', arguments: 
         {
         'calc1Result': calculator.getCalc1Result(),
         'calc2Text': calculator.getCalc2Text()
         'interpretation': calculator.getInterpretation(),           
         });
  </code></pre>
  
  <p>It doesn't work at all and the result is always Null.</p>
  
  <p>While if I do the same thing using Navigator.push() it works.</p>
  
  <pre><code>//Working alternative - I don't want to use this:
  Navigator.push(
                context,
                MaterialPageRoute(
                  builder: (context) =&gt; ResultPage(
                    calc1Result: calculator.getCalc1Result(),
                    calc2Text: calculator.getCalc2Text(),
                    interpretation: calculator.getInterpretation(),                      
                  ),
                ),
              );
  </code></pre>