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