Added transitions with CupertinoPageRoute (#103)
* #100, #85 added Cupertino transition type * #100, #85 added CupertinoPageRoute added support swipe to back with using CupertinoPageRoute * added Cupertino full screen dialog transition type * added Cupertino full screen dialog transition
This commit is contained in:
parent
d3b3470ac2
commit
bf5de991ad
|
@ -46,6 +46,8 @@ enum TransitionType {
|
||||||
inFromBottom,
|
inFromBottom,
|
||||||
fadeIn,
|
fadeIn,
|
||||||
custom, // if using custom then you must also provide a transition
|
custom, // if using custom then you must also provide a transition
|
||||||
|
cupertino,
|
||||||
|
cupertinoFullScreenDialog,
|
||||||
}
|
}
|
||||||
|
|
||||||
enum RouteMatchType {
|
enum RouteMatchType {
|
||||||
|
|
|
@ -12,6 +12,7 @@ import 'dart:async';
|
||||||
import 'package:fluro/fluro.dart';
|
import 'package:fluro/fluro.dart';
|
||||||
import 'package:fluro/src/common.dart';
|
import 'package:fluro/src/common.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter/cupertino.dart';
|
||||||
|
|
||||||
class Router {
|
class Router {
|
||||||
static final appRouter = new Router();
|
static final appRouter = new Router();
|
||||||
|
@ -123,7 +124,14 @@ class Router {
|
||||||
(RouteSettings routeSettings, Map<String, List<String>> parameters) {
|
(RouteSettings routeSettings, Map<String, List<String>> parameters) {
|
||||||
bool isNativeTransition = (transition == TransitionType.native ||
|
bool isNativeTransition = (transition == TransitionType.native ||
|
||||||
transition == TransitionType.nativeModal);
|
transition == TransitionType.nativeModal);
|
||||||
if (isNativeTransition) {
|
if (transition == TransitionType.cupertino || transition == TransitionType.cupertinoFullScreenDialog) {
|
||||||
|
return new CupertinoPageRoute<dynamic>(
|
||||||
|
settings: routeSettings,
|
||||||
|
fullscreenDialog: transition == TransitionType.cupertinoFullScreenDialog,
|
||||||
|
builder: (BuildContext context) {
|
||||||
|
return handler.handlerFunc(context, parameters);
|
||||||
|
});
|
||||||
|
} else if (isNativeTransition) {
|
||||||
return new MaterialPageRoute<dynamic>(
|
return new MaterialPageRoute<dynamic>(
|
||||||
settings: routeSettings,
|
settings: routeSettings,
|
||||||
fullscreenDialog: transition == TransitionType.nativeModal,
|
fullscreenDialog: transition == TransitionType.nativeModal,
|
||||||
|
|
Loading…
Reference in New Issue