react-native-navigation的迁移库

RNNRootViewController.h 1.7KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #import <Foundation/Foundation.h>
  2. #import <UIKit/UIKit.h>
  3. #import "RNNLayoutNode.h"
  4. #import "RNNRootViewCreator.h"
  5. #import "RNNEventEmitter.h"
  6. #import "RNNNavigationOptions.h"
  7. #import "RNNAnimator.h"
  8. #import "RNNUIBarButtonItem.h"
  9. #import "RNNLayoutInfo.h"
  10. #import "RNNLeafProtocol.h"
  11. #import "RNNViewControllerPresenter.h"
  12. typedef void (^PreviewCallback)(UIViewController *vc);
  13. @interface RNNRootViewController : UIViewController <RNNLeafProtocol, UIViewControllerPreviewingDelegate, UISearchResultsUpdating, UISearchBarDelegate, UINavigationControllerDelegate, UISplitViewControllerDelegate>
  14. @property (nonatomic, strong) RNNEventEmitter *eventEmitter;
  15. @property (nonatomic, retain) RNNLayoutInfo* layoutInfo;
  16. @property (nonatomic, strong) RNNViewControllerPresenter* presenter;
  17. @property (nonatomic, strong) RNNNavigationOptions* options;
  18. @property (nonatomic) id<RNNRootViewCreator> creator;
  19. @property (nonatomic, strong) RNNAnimator* animator;
  20. @property (nonatomic, strong) UIViewController* previewController;
  21. @property (nonatomic, copy) PreviewCallback previewCallback;
  22. - (instancetype)initWithLayoutInfo:(RNNLayoutInfo *)layoutInfo
  23. rootViewCreator:(id<RNNRootViewCreator>)creator
  24. eventEmitter:(RNNEventEmitter*)eventEmitter
  25. presenter:(RNNViewControllerPresenter *)presenter
  26. options:(RNNNavigationOptions *)options;
  27. - (instancetype)initExternalComponentWithLayoutInfo:(RNNLayoutInfo *)layoutInfo
  28. eventEmitter:(RNNEventEmitter*)eventEmitter
  29. presenter:(RNNViewControllerPresenter *)presenter
  30. options:(RNNNavigationOptions *)options;
  31. - (BOOL)isExternalViewController;
  32. - (BOOL)isCustomTransitioned;
  33. -(void)onButtonPress:(RNNUIBarButtonItem *)barButtonItem;
  34. @end