Expose push/popRoute on FlutterViewController (flutter/engine#6347)

This commit is contained in:
Dan Field 2018-09-26 22:14:04 -07:00 committed by GitHub
parent d4182cc993
commit 045a313d33
2 changed files with 26 additions and 0 deletions

View File

@ -46,11 +46,29 @@ FLUTTER_EXPORT
/**
Sets the first route that the Flutter app shows. The default is "/".
This method will guarnatee that the initial route is delivered, even if the
Flutter window hasn't been created yet when called. It cannot be used to update
the current route being shown in a visible FlutterViewController (see pushRoute
and popRoute).
- Parameter route: The name of the first route to show.
*/
- (void)setInitialRoute:(NSString*)route;
/**
Instructs the Flutter Navigator (if any) to go back.
*/
- (void)popRoute;
/**
Instructs the Flutter Navigator (if any) to push a route on to the navigation
stack. The setInitialRoute method should be prefered if this is called before the
FlutterViewController has come into view.
- Parameter route: The name of the route to push to the navigation stack.
*/
- (void)pushRoute:(NSString*)route;
- (id<FlutterPluginRegistry>)pluginRegistry;
/**

View File

@ -315,6 +315,14 @@
[_navigationChannel.get() invokeMethod:@"setInitialRoute" arguments:route];
}
- (void)popRoute {
[_navigationChannel.get() invokeMethod:@"popRoute" arguments:nil];
}
- (void)pushRoute:(NSString*)route {
[_navigationChannel.get() invokeMethod:@"pushRoute" arguments:route];
}
#pragma mark - Loading the view
- (void)loadView {