react-native-navigation的迁移库

RNNLayoutProtocol.h 1.2KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #import "RNNLayoutInfo.h"
  2. #import "RNNBasePresenter.h"
  3. #import "RNNComponentViewCreator.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<RNNComponentViewCreator>)creator
  10. options:(RNNNavigationOptions *)options
  11. defaultOptions:(RNNNavigationOptions *)defaultOptions
  12. presenter:(RNNBasePresenter *)presenter
  13. eventEmitter:(RNNEventEmitter *)eventEmitter
  14. childViewControllers:(NSArray *)childViewControllers;
  15. - (void)render;
  16. - (UIViewController<RNNLayoutProtocol> *)getCurrentChild;
  17. - (CGFloat)getTopBarHeight;
  18. - (CGFloat)getBottomTabsHeight;
  19. - (UIViewController *)topMostViewController;
  20. - (void)mergeOptions:(RNNNavigationOptions *)options;
  21. - (RNNNavigationOptions *)resolveOptions;
  22. - (void)setDefaultOptions:(RNNNavigationOptions *)defaultOptions;
  23. - (void)overrideOptions:(RNNNavigationOptions *)options;
  24. - (void)onChildWillAppear;
  25. - (void)readyForPresentation;
  26. @end