flutter 初探2--点击按钮打开新窗口

1、新建一个page

 

 

2、将该page加到router

import 'package:flutter/material.dart';
import 'package:flutter_bcd/pages/account/register_page.dart';
import 'package:flutter_bcd/pages/detail/travel_detail_widget.dart';
import 'package:flutter_bcd/tabbar/tabbar_page.dart';

final routers = {
  "/": (context) => TabbarPage(),
  "/travel_detail_widget":(context,{arguments}) => TravelDetailWidget(),
  "/register_page":(context,{arguments}) => RegiseterPage(),
};

  

3、给按钮添加手势事件

       GestureDetector(
           child: Container(
             alignment: Alignment.center,
             width: ScreenAdapter.setWidth(260),
             height: ScreenAdapter.setWidth(90),
             decoration: BoxDecoration(
                 borderRadius: BorderRadius.circular(30),
                 color: Color.fromRGBO(36, 38, 41, 1.0)

             ),
             child: Text(
                 "登录/注册",
                 style: TextStyle(color: Color.fromRGBO(248, 215, 62, 1.0),fontSize: 16,fontWeight: FontWeight.w500)),

           ),
         onTap: ()=>_click(context),
       )

  

我要给某某控件加一个点击事件,没有onTap,onPressed吗?

GestureDetector包含了丰富的手势,包上你的控件就好了

 void _click(BuildContext context) {
    Navigator.of(context).pushNamed("/register_page");
    // 这里使用传入的context就好了
    /*Scaffold.of(context).showSnackBar(SnackBar(
      content: Text('内容'),
    ));*/
  }

  

https://www.jianshu.com/p/58f69596df56

 

posted @ 2020-06-13 06:49  hoge  阅读(1304)  评论(0编辑  收藏  举报