码迷,mamicode.com
首页 > 移动开发 > 详细

iOS学习 - scrollView(图片查看器)

时间:2015-08-28 12:34:49      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:

//
//  YJViewController.m
//  07-scrollView-查看大图
//
//  Created by JACKY-MAC on 15-6-17.
//  Copyright (c) 2015年 www.train.com. All rights reserved.
//

#import "YJViewController.h"

@interface YJViewController ()<UIScrollViewDelegate>
@property (strong, nonatomic) IBOutlet UIScrollView *scrollView;

@property(nonatomic,strong)UIImageView *imageView;

// 假设图像是从网络上获取的
@property(nonatomic,strong)UIImage *image;

@end

@implementation YJViewController
// 图像的setter
- (void)setImage:(UIImage *)image
{
    _image = image;
    
    // 设置图像视图的内容
    self.imageView.image = image;
    
    // 让图像视图根据图像自动调整大小
    
    [self.imageView sizeToFit];
    
    // 告诉scrollView内部内容的实际大小
    self.scrollView.contentSize = image.size;
}

- (UIImageView *)imageView
{
    if (_imageView ==nil) {
        _imageView = [[UIImageView alloc] init];
        [self.scrollView addSubview:_imageView];
    }
    return _imageView;
}

- (UIScrollView *)scrollView
{
    if (_scrollView == nil) {
        _scrollView = [[UIScrollView alloc] initWithFrame:self.view.bounds];
        
        // 设置属性
        // 设置边距
        self.scrollView.contentInset = UIEdgeInsetsMake(20, 20, 20, 20);
        
        // 不显示水平滚动标示
        self.scrollView.showsHorizontalScrollIndicator = NO;
        
        // 不显示垂直滚动标示
        self.scrollView.showsVerticalScrollIndicator = NO;
        
        // *** 偏移位置
        self.scrollView.contentOffset = CGPointMake(0, - 100);
        // 取消弹簧效果,内容固定,不希望出现弹簧效果时
        // 不要跟bounds属性搞混了
        
        self.scrollView.bounces = NO;
        
           // 设置代理
        _scrollView.delegate = self;
        
           // 设置最大/最小缩放比例
        _scrollView.maximumZoomScale = 2.0;
        _scrollView.minimumZoomScale = 0.2;
        
        [self.view addSubview:_scrollView];
        
    }
    return _scrollView;
}


- (void)viewDidLoad
{
    [super viewDidLoad];
    
    // 设置图像
    self.image = [UIImage imageNamed:@"minion"];
}


#pragma mark - UIScrollView的代理方法
/**
 1> 设置了代理
 2> 指定了最大、最小的缩放比例
 
 表示ScrollView是可以缩放的
 
 代理方法的"返回值"实际上就是控制器告诉滚动视图,要缩放的是UIImageView
 */
// 告诉ScrollView要缩放的视图是谁,具体的缩放实现,是由ScrollView来完成的
// 1> scrollView要知道缩放谁

-(UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
    return self.imageView;
}
@end

技术分享

 

iOS学习 - scrollView(图片查看器)

标签:

原文地址:http://www.cnblogs.com/yejian/p/4765804.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!