// // RQRetrainViewController.m // jiaPei // // Created by 张嵘 on 2022/4/14. // Copyright © 2022 JCZ. All rights reserved. // #import "RQRetrainViewController.h" // 大头针 #import // 搜索 #import @interface RQRetrainViewController () /// viewModel @property (nonatomic, readonly, strong) RQRetrainViewModel *viewModel; @property (nonatomic, readwrite, strong) UIButton *backBtn; @property (nonatomic, readwrite, strong) RQRetrainOrderViewController *retrainOrderViewController; @end @implementation RQRetrainViewController @dynamic viewModel; #pragma mark - SystemMethod - (void)viewDidLoad { [super viewDidLoad]; /// 初始化 [self rq_setup]; } - (void)viewDidLayoutSubviews { [super viewDidLayoutSubviews]; self.backBtn.frame = CGRectMake(16, RQ_APPLICATION_STATUS_BAR_HEIGHT, RQ_FIT_HORIZONTAL(54), RQ_FIT_HORIZONTAL(54)); } - (void)dealloc { // _mapView.delegate = nil; } #pragma mark - PrivateMethods /// 初始化 - (void)rq_setup { //以下_mapView为BMKMapView对象 [self.view addSubview:[LOCATION_MANAGER getMapViewWithSize:CGSizeMake(RQ_SCREEN_WIDTH, RQ_SCREEN_HEIGHT - (RQ_APPLICATION_NAV_BAR_HEIGHT + RQ_APPLICATION_STATUS_BAR_HEIGHT) - RQ_APPLICATION_SAFEAREA_BOTTOM_HEIGHT)]]; [self.view addSubview:self.backBtn]; [self presentPanModal:self.retrainOrderViewController]; } #pragma mark - BMKMapViewDelegate #pragma mark - LazyLoad - (UIButton *)backBtn { if (!_backBtn) { @weakify(self) _backBtn = [UIButton buttonWithType:UIButtonTypeCustom]; [_backBtn setBackgroundImage:RQImageNamed(@"返回") forState:UIControlStateNormal]; [_backBtn setTapActionWithBlock:^(UITapGestureRecognizer *tap) { @strongify(self) [self.viewModel.services popViewModelAnimated:YES]; [self.retrainOrderViewController dismissViewControllerAnimated:YES completion:^{ }]; }]; } return _backBtn; } - (RQRetrainOrderViewController *)retrainOrderViewController { if (!_retrainOrderViewController) { RQRetrainOrderViewModel *retrainOrderViewModel = [[RQRetrainOrderViewModel alloc] initWithServices:self.viewModel.services params:nil]; _retrainOrderViewController = [[RQRetrainOrderViewController alloc] initWithViewModel:retrainOrderViewModel]; } return _retrainOrderViewController; } @end