zoukankan      html  css  js  c++  java
  • flutter-异步请求选择回来的方法

    异步请求和等待

    Dart中的异步请求和等待和ES6中的方法很像,直接使用async...await就可以实现。比如下面作了一个找朋友的方法,然后进行跳转,注意这时候是异步的。等待结果回来之后,我们再显示出来内容。具体代码如下:

    import 'package:flutter/material.dart';
    
    void main(){
      runApp(
        MaterialApp(
          title: "页面跳转返回数据",
          home: FirstPage(
    
          ),
        )
      );
    }
    
    class FirstPage extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(
            title: Text('找你要电话'),
          ),
          body: RouteButton(),
        );
      }
    }
    
    
    class RouteButton extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return RaisedButton(
          onPressed: (){
            _navigateToYou(context);
          },
          child: Text('找到你'),
        );
      }
    }
    
    _navigateToYou(BuildContext context) async{
      final result = await Navigator.push(
        context, 
        MaterialPageRoute(builder: (context)=>You())
      );
      //数据回来后 下方会显示选择的数据
      Scaffold.of(context).showSnackBar(SnackBar(content:Text('$result')));
    }
    
    class You extends StatelessWidget{
      @override
      Widget build(BuildContext context){
        return Scaffold(
          appBar: AppBar(title: Text('hello'),),
          body: Center(
            child: Column(
              children: <Widget>[
                RaisedButton(
                  child: Text('号码1'),
                  onPressed: (){
                    Navigator.pop(context,"号码1::1221312312321");
                  },
                ),
                RaisedButton(
                  child: Text('号码2'),
                  onPressed: (){
                    Navigator.pop(context,"号码2::352423424324");
                  },
                )
              ],
            ),
          ),
        );
      }
    }

    效果

  • 相关阅读:
    Linux里的2>&1究竟是什么
    表锁操作
    日志rsyslog
    计划任务at cron
    rpm包管理和源码包管理
    自建yum源(只演示nginx服务,其它都一样)
    软件包管理yum
    文件打包及压缩
    查找文件which locate find
    lsof恢复进程打开的文件
  • 原文地址:https://www.cnblogs.com/lxz-blogs/p/13229024.html
Copyright © 2011-2022 走看看