flutter 頁面跳轉

import 'package:flutter/material.dart';
import 'package:kdbflutter/common/IGenericDataProvider.dart';

//頁面跳轉
class RouteUtil {
  //跳轉頁面
  static push(BuildContext context, Widget widget) {
    Navigator.push(
      context,
      MaterialPageRoute(
        builder: (context) => widget,
      ),
    );
  }

  //跳轉頁面帶參
  static pushData<T>(BuildContext context, Widget widget, T data) {
    Navigator.push(
      context,
      MaterialPageRoute(
          builder: (context) => IGenericDataProvider<T>(
                child: widget,
                data: data,
              )),
    );
  }

  //跳轉並關閉當前頁面
  static pushAndRemoveUntil(BuildContext context, Widget widget) {
    Navigator.pushAndRemoveUntil(
      context,
      new MaterialPageRoute(builder: (context) => widget),
      (route) => route == null,
    );
  }

  //關閉當前頁面
  static pop(BuildContext context) {
    Navigator.pop(context);
  }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章