// // PBDrawingsShowController.m // IphoneBIMe // // Created by zjf on 2018/7/24. // Copyright © 2018年 ProBIM. All rights reserved. // #import "PBDrawingsShowController.h" #import "PBDrawingsModel.h" #import "PBModelsModel.h" #import "PBDrawingsInfoModel.h" @interface PBDrawingsShowController () @property (nonatomic,strong) UIScrollView *scrollView; @property (nonatomic, strong) UIImageView *imageV; @property (nonatomic, strong) UIImage *image; @end @implementation PBDrawingsShowController - (void)viewDidLoad { [super viewDidLoad]; [self setNav]; [self setupUI]; } - (void)setNav{ self.view.backgroundColor = [UIColor whiteColor]; PBBackNavItem *backNav = [PBBackNavItem backNacItem]; backNav.title = @"图纸"; [backNav addTarget:self action:@selector(backNavAction) forControlEvents:UIControlEventTouchUpInside]; UIBarButtonItem *backNavItem = [[UIBarButtonItem alloc] initWithCustomView:backNav]; self.navigationItem.leftBarButtonItem = backNavItem; } - (void)setupUI { self.scrollView = [[UIScrollView alloc] init]; self.scrollView.delegate = self; [self.view addSubview:self.scrollView]; [self.scrollView mas_makeConstraints:^(MASConstraintMaker *make) { make.top.bottom.left.right.equalTo(self.view); }]; self.imageV = [[UIImageView alloc] init]; self.imageV.contentMode = UIViewContentModeScaleToFill; [self.scrollView addSubview:self.imageV]; [self.imageV mas_makeConstraints:^(MASConstraintMaker *make) { make.top.bottom.left.right.equalTo(self.scrollView); }]; } - (void)backNavAction { [self.navigationController popViewControllerAnimated:YES]; } - (void)loadDrawingsInfo { // [YJProgressHUD showCustomAnimation:@"" inview:self.view]; [YJProgressHUD showProgress:@"" inView:self.view]; [[PBNetworkTools sharedTools] RequestGetFIleWithProjectID:_modelsModel.ProjectID andModelID:_modelsModel.ID andVersionNO:@"" andFileType:@"PlanView" andFileName:_drawingsModel.ID andCallBack:^(NSURLSessionDataTask *task, id response, NSError *error) { if (error) { NSLog(@"%@",error); [YJProgressHUD showMessage:@"加载图纸失败" inView:self.view]; return; } [YJProgressHUD hide]; NSString *str = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding]; PBDrawingsInfoModel *drawingsInfoModel = [PBDrawingsInfoModel yy_modelWithJSON:str]; self.image = [NSString imageDecoding:drawingsInfoModel.imagebase64]; [self setScrollView]; }]; } - (void)setScrollView { self.imageV.image = self.image; self.scrollView.contentSize = self.image.size; NSInteger imageW = CGImageGetWidth(self.image.CGImage); NSInteger width = self.view.bounds.size.width; CGFloat scale = (CGFloat)width / (CGFloat)imageW; self.scrollView.maximumZoomScale = 2; self.scrollView.minimumZoomScale = scale; [self.scrollView setZoomScale:scale animated:NO]; } - (void)setDrawingsModel:(PBDrawingsModel *)drawingsModel { _drawingsModel = drawingsModel; self.title = drawingsModel.name; [self loadDrawingsInfo]; } - (void)setModelsModel:(PBModelsModel *)modelsModel { _modelsModel = modelsModel; } #pragma mark - UIScrollViewDelegate - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView { return self.imageV; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } /* #pragma mark - Navigation // In a storyboard-based application, you will often want to do a little preparation before navigation - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { // Get the new view controller using [segue destinationViewController]. // Pass the selected object to the new view controller. } */ @end