react-native-navigation的迁移库

RNNLayoutProtocol.h 1.1KB

1234567891011121314151617181920212223242526272829303132333435
  1. #import "RNNLayoutInfo.h"
  2. #import "RNNBasePresenter.h"
  3. #import "RNNRootViewCreator.h"
  4. #import "RNNEventEmitter.h"
  5. typedef void (^RNNReactViewReadyCompletionBlock)(void);
  6. @protocol RNNLayoutProtocol <NSObject, UINavigationControllerDelegate, UIViewControllerTransitioningDelegate, UISplitViewControllerDelegate>
  7. @required
  8. - (instancetype)initWithLayoutInfo:(RNNLayoutInfo *)layoutInfo
  9. creator:(id<RNNRootViewCreator>)creator
  10. options:(RNNNavigationOptions *)options
  11. defaultOptions:(RNNNavigationOptions *)defaultOptions
  12. presenter:(RNNBasePresenter *)presenter
  13. eventEmitter:(RNNEventEmitter *)eventEmitter
  14. childViewControllers:(NSArray *)childViewControllers;
  15. - (void)renderTreeAndWait:(BOOL)wait perform:(RNNReactViewReadyCompletionBlock)readyBlock;
  16. - (UIViewController<RNNLayoutProtocol> *)getCurrentChild;
  17. - (void)mergeOptions:(RNNNavigationOptions *)options;
  18. - (RNNNavigationOptions *)resolveOptions;
  19. - (void)setDefaultOptions:(RNNNavigationOptions *)defaultOptions;
  20. - (void)overrideOptions:(RNNNavigationOptions *)options;
  21. - (void)onChildWillAppear;
  22. @end