// // PBImageShowViewController.m // IphoneBIMe // // Created by zjf on 2018/9/13. // Copyright © 2018年 ProBIM. All rights reserved. // #import "PBImageShowViewController.h" @interface PBImageShowViewController () @property (nonatomic,strong) UIScrollView *scrollView; @property (nonatomic,weak) UIImageView *imageV; @end @implementation PBImageShowViewController - (void)viewDidLoad { [super viewDidLoad]; [self setupUI]; } - (void)setupUI { self.view.backgroundColor = [UIColor blackColor]; UIView *navBgView = [[UIView alloc] init]; navBgView.backgroundColor = [UIColor blackColor]; [self.view addSubview:navBgView]; CGFloat height; if (IS_IPHONE_X) { height = 88.0f; }else { height = 64.0f; } [navBgView mas_makeConstraints:^(MASConstraintMaker *make) { make.top.left.right.equalTo(self.view); make.height.equalTo(@(height)); }]; UIButton *button =[UIButton z_textButton:@"取消" fontSize:18 normalColor:[UIColor whiteColor]]; [button addTarget:self action:@selector(cancelButton) forControlEvents:UIControlEventTouchUpInside]; [self.view addSubview:button]; [button mas_makeConstraints:^(MASConstraintMaker *make) { make.bottom.equalTo(navBgView).offset(-12); make.left.equalTo(self.view).offset(20); make.size.mas_equalTo(CGSizeMake(50, 30)); }]; self.scrollView = [[UIScrollView alloc] init]; self.scrollView.delegate = self; [self.view addSubview:self.scrollView]; [self.scrollView mas_makeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(navBgView.mas_bottom); make.bottom.left.right.equalTo(self.view); }]; UIImageView *imageV = [[UIImageView alloc] init]; self.imageV = imageV; imageV.contentMode = UIViewContentModeScaleToFill; [self.scrollView addSubview:imageV]; [imageV mas_makeConstraints:^(MASConstraintMaker *make) { make.top.bottom.left.right.equalTo(self.scrollView); }]; 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)cancelButton { [self dismissViewControllerAnimated:NO completion:nil]; } #pragma mark - UIScrollViewDelegate - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView { return self.imageV; } - (void)setImage:(UIImage *)image { _image = image; } - (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