滾動
1,建立web
UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(50, 50, 300, 300)];2,設置屬性代理動畫
scrollView.delegate = self;3,定義內容區域大小,決定是否可以滑動,大於ScrollView的size才能夠滑動spa
scrollView.contentSize = CGSizeMake(300 * 3 , 300);4,內容偏移量代理
scrollView.contentOffset = CGPointMake(600, 0);// 內容偏移量 至關於往右移動300 可簡單理解爲第一次打開顯示scrollview的區域5,給scrollView添加子視圖code
UIImageView *iconImage = [[UIImageView alloc] initWithFrame:CGRectMake(300,0,300,300)]; iconImage.image = [UIImage imageNamed:"..."]; [scrollView addSubViews:iconImage];6,其餘經常使用屬性設置繼承
scrollView.scrollEnabled = YES;//是否容許滑動,默認是YES scrollView.pagingEnabled = YES;//整屏滾動,默認是NO scrollView.showsHorizontalScrollIndicator = NO; //是否顯示水平滾動條,默認是YES scrollView.bounces = NO;//默認是yes,設置成no關閉邊界回彈7,第2步給滾動scrollView設置了代理必須遵照協議UIScrollViewDelegateit
@interface RootViewController () <UIScrollViewDelegate>8, 重寫協議裏面的相關方法io
(1)一旦滾動當即觸發(偏移量發生改變)class
- (void)scrollViewDidScroll:(UIScrollView *)scrollView;(2)滑動開始減速的時候觸發webkit
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView(3)滑動結束的時候觸發,也即再也不發生有偏移量改變的時候
- (void)scrollViewWillEndDecelerating:(UIScrollView *)scrollView;(4)滑動動畫結束的時候觸發
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView;
縮放
(1)建立以後設置代理
_scrollView = self;(2)代理遵照UIScrollViewDelegate協議並實現必須實現的方法!!!
- (nullable UIView *)viewForZoomingInScrollView: (UIScrollView *)scrollView 該方法必須重寫並實現,指定能 夠進行縮放的視圖(3)其餘屬性
最小縮放比例(必須指定)
_scrollView.minimumZoomScale最大縮放比例(必須指定)
_scrollView.maximumZoomScale(4)實現協議裏面關於縮放的其餘方法
完成縮放放大的時候觸發
- (void)scrollViewDidZoom:(UIScrollView *)scrollView NS_AVAILABLE_IOS(3_2)指定某個UIScrolView的子視圖能夠被放大縮小
- (UIView *)viewForZoomingInScrollView: (UIScrollView *)scrollView//UIScrolView裏面只容許一個子視圖能夠被縮放,如果想要多個子視圖被縮放,可在UIScrolView添加多個子UIScrolView