LZImageBrowserForceTouchViewController.m 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. //
  2. // LZImageBrowserForceTouchViewController.m
  3. // LZImageDetail
  4. //
  5. // Created by shenzhenshihua on 2018/7/17.
  6. // Copyright © 2018年 shenzhenshihua. All rights reserved.
  7. //
  8. #import "LZImageBrowserForceTouchViewController.h"
  9. #import "LZImageBrowserHeader.h"
  10. #import <SDWebImage/UIImageView+WebCache.h>
  11. @interface LZImageBrowserForceTouchViewController ()
  12. @end
  13. @implementation LZImageBrowserForceTouchViewController
  14. - (void)viewDidLoad {
  15. [super viewDidLoad];
  16. self.view.backgroundColor = [UIColor whiteColor];
  17. [self initView];
  18. // Do any additional setup after loading the view.
  19. }
  20. - (void)initView {
  21. CGFloat showImageViewW;
  22. CGFloat showImageViewH;
  23. CGFloat showImageW = self.showOriginForceImage.size.width;
  24. CGFloat showImageH = self.showOriginForceImage.size.height;
  25. if (showImageH/showImageW > Screen_Height/Screen_Width) {
  26. showImageViewH = Screen_Height;
  27. showImageViewW = Screen_Height * showImageW/showImageH;
  28. } else {
  29. showImageViewW = Screen_Width;
  30. showImageViewH = Screen_Width * showImageH/showImageW;
  31. }
  32. UIImageView * showImageView = [[UIImageView alloc] initWithFrame:CGRectMake(-1, -1, showImageViewW, showImageViewH)];
  33. [showImageView sd_setImageWithURL:[NSURL URLWithString:self.showForceImageUrl] placeholderImage:self.showOriginForceImage];
  34. showImageView.contentMode = UIViewContentModeScaleAspectFit;
  35. [self.view addSubview:showImageView];
  36. }
  37. //如果你需要为3Dtouch上滑增加事件 在当前视图控制器重写 下面的方法
  38. - (NSArray<id<UIPreviewActionItem>> *)previewActionItems {
  39. NSMutableArray * previewActionItems = [[NSMutableArray alloc] init];
  40. __weak LZImageBrowserForceTouchViewController * weakSelf = self;
  41. for (NSInteger i = 0; i < self.previewActionTitls.count; i++) {
  42. UIPreviewAction *previewAction = [UIPreviewAction actionWithTitle:self.previewActionTitls[i] style:UIPreviewActionStyleDefault handler:^(UIPreviewAction * _Nonnull action, UIViewController * _Nonnull previewViewController) {
  43. if (weakSelf.forceTouchActionBlock) {
  44. weakSelf.forceTouchActionBlock(i, self.previewActionTitls[i]);
  45. }
  46. }];
  47. [previewActionItems addObject:previewAction];
  48. }
  49. return [previewActionItems copy];
  50. }
  51. - (void)didReceiveMemoryWarning {
  52. [super didReceiveMemoryWarning];
  53. // Dispose of any resources that can be recreated.
  54. }
  55. /*
  56. #pragma mark - Navigation
  57. // In a storyboard-based application, you will often want to do a little preparation before navigation
  58. - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
  59. // Get the new view controller using [segue destinationViewController].
  60. // Pass the selected object to the new view controller.
  61. }
  62. */
  63. @end