首页 > 代码库 > 【ios控件】UIScrollView 事件说明

【ios控件】UIScrollView 事件说明

  1 //  2 //  UIDemoViewController.m  3 //  06-1UIScrollDemo  4 //  5 //  Created by k on 14-9-4.  6 //  Copyright (c) 2014年 com.akleee.www. All rights reserved.  7 //  8   9 #import "UIDemoViewController.h" 10  11 @interface UIDemoViewController ()<UIScrollViewDelegate> 12 @property (weak, nonatomic) IBOutlet UIScrollView *scrollViw; 13 @property (weak, nonatomic) IBOutlet UIImageView *img; 14  15 - (IBAction)changeOffset:(id)sender; 16  17  18 @end 19  20 @implementation UIDemoViewController 21  22 - (void)viewDidLoad 23 { 24     [super viewDidLoad]; 25     // Do any additional setup after loading the view, typically from a nib. 26     //NSLog(@"%@",NSStringFromCGRect(_img.frame)); 27      28     //设置可移动区域 29     _scrollViw.contentSize=_img.bounds.size; 30      31     //可视窗口位置 32     int moveTop=100,moveLeft=100; 33      34     _scrollViw.contentOffset=CGPointMake(moveTop, moveLeft); 35      36     //可视窗口大小 37    //int windowW=100,windowH=400,windowX=10,windowY=20; 38    // _scrollViw.frame=CGRectMake(windowX, windowY, windowW, windowH); 39      40     //外边距 41     int paddingT=10,paddingL=10,paddingR=20,paddingB=20; 42      43     _scrollViw.contentInset=UIEdgeInsetsMake(paddingT, paddingL, paddingB, paddingR); 44      45     //水平滚动条 46 //    _scrollViw.showsHorizontalScrollIndicator=NO; 47 // 48 //    //垂直滚动条 49 //    _scrollViw.showsVerticalScrollIndicator=NO; 50      51     _scrollViw.delegate=self; 52      53     _scrollViw.maximumZoomScale=2; 54      55     _scrollViw.minimumZoomScale=0.1; 56      57 } 58  59  60 - (void)didReceiveMemoryWarning 61 { 62     [super didReceiveMemoryWarning]; 63     // Dispose of any resources that can be recreated. 64 } 65 -(void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{ 66     //开始拖拽 67     //NSLog(@"scrollViewWillBeginDragging %@",NSStringFromCGPoint(scrollView.contentOffset)); 68      69 } 70 -(void)scrollViewDidScroll:(UIScrollView *)scrollView   { 71     //正在拖拽 72     //NSLog(@"scrollViewDidScroll %@",NSStringFromCGPoint(scrollView.contentOffset)); 73 } 74  75  76 -(void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{ 77     //拖拽结束 78     //NSLog(@"scrollViewDidEndDragging %@",NSStringFromCGPoint(scrollView.contentOffset)); 79 } 80  81 -(void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{ 82     //拖动后开始滑行 83     //NSLog(@"scrollViewWillBeginDecelerating %@",NSStringFromCGPoint(scrollView.contentOffset)); 84 } 85 -(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{ 86  87     //拖动后滑行结束 88     //NSLog(@"scrollViewDidEndDecelerating %@",NSStringFromCGPoint(scrollView.contentOffset)); 89  90 } 91 -(void)scrollViewDidScrollToTop:(UIScrollView *)scrollView{ 92     //滑动到下方内容 点击系统顶部导航 自动定位到顶部时触发 93     //NSLog(@"scrollViewDidScrollToTop %@",NSStringFromCGPoint(scrollView.contentOffset)); 94      95 } 96  97  98 -(BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView{ 99     //滑动到下方内容 点击系统顶部导航100     NSLog(@"scrollViewShouldScrollToTop %@",NSStringFromCGPoint(scrollView.contentOffset));101     //返回是否 自动定位到顶部102     return NO;103 }104 105 -(void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{106     // 当触发[_scrollViw setContentOffset:CGPointMake(200, 200) animated:YES];后  触发此事件107     //如果animated:NO的话  不会触发此事件108     //NSLog(@"scrollViewDidEndScrollingAnimation %@",NSStringFromCGPoint(scrollView.contentOffset));109 }110 111 -(UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{112     //设置需要缩放的UIView113    // NSLog(@"viewForZoomingInScrollView %@",NSStringFromCGPoint(scrollView.contentOffset));114     115 116     return _img;117 118 }119 120 -(void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(UIView *)view{121     //开始缩放122     NSLog(@"scrollViewWillBeginZooming");123     124 }125 126 -(void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(CGFloat)scale127 {128     //结束缩放129     NSLog(@"scrollViewDidEndZooming");130 131     132 }133 134 135 136 137 138 - (IBAction)changeOffset:(id)sender {139     NSLog(@"change offset");140     [_scrollViw setContentOffset:CGPointMake(200, 200) animated:NO];141     //_scrollViw .contentOffset=CGPointMake(200, 200);142 }143 @end

 

【ios控件】UIScrollView 事件说明