一、 ? 基本使用

1. ? 作用

? ?UIScrollView可以用于顯示多于一個屏幕的內容,超出屏幕范圍的內容可以通過滑動進行查看

2. ? 常見屬性

  1. ?CGSizecontentSize:設置UIScrollView的滾動范圍

  2. ?CGPointcontentOffset :UIScrollView當前滾動的位置

  3. ?UIEdgeInsetscontentInset :這個屬性可以在四周增加滾動范圍


3. ? 其他屬性

  1. BOOL bounces ? ? ? ? ?是否有彈簧效果

  2. BOOL scrollEnabled ? ? ? ?是否能滾動

  3. BOOLshowsHorizontalScrollIndicator ? ? ?是否顯示水平方向的滾動條

  4. BOOLshowsVerticalScrollIndicator ? ? 是否顯示垂直方向的滾動條

  5. UIScrollViewIndicatorStyleindicatorStyle ?設定滾動條的樣式 ? ? ?

  6. BOOL dragging ? ? ? ? ?是否正在被拖拽 ? ?

  7. BOOL tracking 當touch后還沒有拖動的時候值是YES,否則NO

  8. BOOL decelerating ? ? ? ? ? 是否正在減速 ? ? ? ? ?

  9. BOOL zooming ? ? ? ? ?是否正在縮放 ? ? ? ? ?


二、 ? 手勢縮放

1. ? ?設置UIScrollView的id<UISCrollViewDelegate> delegate代理對象

2. ? ?設置minimumZoomScale :縮小的最小比例

3. ? ?設置maximumZoomScale :放大的最大比例

4. ? ?讓代理對象實現下面的方法,返回需要縮放的視圖控件

- (UIView *)viewForZoomingInScrollView:(UIScrollView*)scrollView

? ? - 跟縮放相關的常用方法還有

? ? - 正在縮放的時候調用

-(void)scrollViewDidZoom:(UIScrollView*)scrollView

? ? - 縮放完畢的時候調用

-(void)scrollViewDidEndZooming:(UIScrollView*)scrollView withView:(UIView *)view atScale:(float)scale


三、 ? 分頁效果

1 ?設置pagingEnabled=YES即可,UIScrollView會被分割成多個獨立頁面,用戶的滾動體驗則變成 了頁面翻轉

2 一般會配合UIPageControl增強分頁效果,UIPageControl常用屬性:

? ?NSInteger numberOfPages : 總頁數

? ?NSInteger currentPage : 當前的頁碼

? ?BOOL hidesForSinglePage : 當只有一頁的時候,是否要隱藏視圖

3 監聽UIPageControl的頁面改變:

// 添加監聽器

[pageControl addTarget:self action:@selector(pageChange:)
forControlEvents:UIControlEventValueChanged];

// 監聽方法

- (void)pageChange:(UIPageControl*)pageControl
{  }