UI1_UIScrollView

//
//  AppDelegate.m
//  UI1_UIScrollView
//
//  Created by zhangxueming on 15/7/10.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import "AppDelegate.h"
#import "ViewController.h"

@interface AppDelegate ()

@end

@implementation AppDelegate


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    ViewController *root = [[ViewController alloc] init];
    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:root];
    self.window.rootViewController = nav;
    self.window.backgroundColor = [UIColor whiteColor];
    
    return YES;
}

 

//
//  ViewController.h
//  UI1_UIScrollView
//
//  Created by zhangxueming on 15/7/10.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController <UIScrollViewDelegate>

@end

 

//
//  ViewController.m
//  UI1_UIScrollView
//
//  Created by zhangxueming on 15/7/10.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    NSString *path = [[NSBundle mainBundle] pathForResource:@"image" ofType:@"png"];
    UIImage *image = [UIImage imageWithContentsOfFile:path];
    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, image.size.width, image.size.height)];
    imageView.image = image;
    //[self.view addSubview:imageView];
    //创建滚动视图
    UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 64, self.view.frame.size.width, self.view.frame.size.height)];
    //设置内容视图的大小
    //跟imageView的大小相同
    scrollView.contentSize = CGSizeMake(imageView.frame.size.width, imageView.frame.size.height);
    [scrollView addSubview:imageView];
    scrollView.backgroundColor = [UIColor redColor];
    //消除导航栏的影响,显示的视图不被导航栏覆盖
    self.automaticallyAdjustsScrollViewInsets = NO;
    
    //隐藏滚动条
    //横向的指示条
    scrollView.showsHorizontalScrollIndicator = NO;
    //竖向的指示条
    scrollView.showsVerticalScrollIndicator = YES;
    
    //设置边界回弹
    scrollView.bounces = YES;
    //滚动视图的偏移, 相对于内容视图的偏移
    scrollView.contentOffset = CGPointMake(0, 0);
    //设置分页
    //必然有一个减速的过程
    scrollView.pagingEnabled = YES;
    //是否滚动
    scrollView.scrollEnabled = YES;
    
    //[scrollView setContentOffset:CGPointMake(-100, -100) animated:YES];
    //[scrollView flashScrollIndicators];
    
    //设置放大缩小的系数
    scrollView.delegate = self;
    scrollView.minimumZoomScale  = 0.2;
    scrollView.maximumZoomScale  = 3;
    
    [self.view addSubview:scrollView];
}


#pragma mark --UIScrollViewDelegate---
//视图发生滚动时调用
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    //NSLog(@"----滚动----");
}
//视图发生拖拽的时候调用
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
    NSLog(@"----拉拽----");
}

//拖拽结束时调用
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{
    NSLog(@"decelerate = %i", decelerate);
    if (decelerate) {
        NSLog(@"拖拽减速");
    }
}
//返回要放大子视图
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
    NSLog(@"图片被放大");
    
    return [scrollView.subviews objectAtIndex:0];
}

//当有减速过程的时候才被调用
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView
{
    NSLog(@"开始减速");
}
//如果设置分页使能, 那么该方法肯定被调用
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
    NSLog(@"减速结束");
}



- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

 

posted @ 2015-07-11 16:34  sirzhang  阅读(181)  评论(0编辑  收藏  举报
AmazingCounters.com