UIScrollView 類負責全部基於 UIKit 的滾動操做。java
1、建立web
當你建立完滾動視圖後,你能夠將另外一個視圖的內容粘合到滾動視圖的空白頁上。這回建立一個滾動的內容窗口:app
你必須給出內容的實際大小,這樣滾動視圖才知道滾動的範圍:ide
要開啓縮放功能須要調整視圖的兩個屬性,分別是maxinumZoomScale 和 mininumZoomScale 。這樣就能夠容許用戶使用捏合手勢調整內容大小:oop
要打開縮放功能,你還須要增長一個UIScrollViewDelegate 代理,經過一個名爲 viewForZoomingScrollViewurl
的方法作出響應。這個方法會返回進行縮放時所使用的 UIView 對象:spa
Tips:對於大規模數據,你可能會在最初使用一個低於實際大小(1.0)的縮放比例,讓用戶能夠平滑地進行放大。.net
2、屬性代理
除了上面用到的縮放屬性外,滾動視圖還有會讓你多其餘屬性,能夠對現實內容的行爲進行微調。你能夠對 UIScrollView 類進行多方位定製。下面這些屬性是最經常使用的。指針
1.indicatorStyle
指定你但願使用的滾動條指示器的類型。默認行爲是在白邊界上繪製黑色的滾動條,這在大多數背景下都適用。可用風格以下:
2.contentOffset
一個CGPoint結構,其中包含有要顯示內容相對於窗口左上角的偏移量。默認是從0×0開始的,可是你也能夠將顯示內容放在其餘位置。
3.directionalLockEnabled
默認行爲是容許用戶同時進行橫向和縱向的滾動。將這個屬性設置爲YES會致使將用戶的滾動行爲鎖定成只容許橫向或縱向進行,具體方向由初始姿態決定。
4.bounces
當用戶抵達滾動區域邊緣時,這個功能容許用戶稍微拖動到邊界外一點。當用戶鬆開手指後,這個區域會像個橡皮筋同樣,彈回到原位,給用戶一個可見的提示,表示他已經到達了文檔開始或結束位置。若是不想讓用戶的滾動範圍可以超出可見內容,能夠將這個屬性設置爲NO。
5.bouncesZoom
相似於bounces 選項,這個方法能夠令用戶的縮放操做超出最大或最小縮放級別,而後彈回到範圍之內。若是你不想讓用戶可以超出你指定的範圍進行縮放,將這個屬性設置爲NO。
6.pagingEnabled
當開啓了分頁功能時,滾動視圖被分割成多個獨立區段,二用戶的滾動體驗則變成了頁面翻轉,你能夠用這個屬性來進行頁面翻轉。
3、委託方法
能夠賦予滾動視圖一個委託,下列委託方法會在特定時刻收到通知。
OK,都總結完了,後面會寫一個頁面翻轉的例子敬請關注。
屬性 | 做用 |
CGPoint contentOffSet | 監控目前滾動的位置 |
CGSize contentSize | 滾動範圍的大小 |
UIEdgeInsets contentInset | 視圖在scrollView中的位置 |
id<UIScrollerViewDelegate> delegate |
設置協議 |
BOOL directionalLockEnabled | 指定控件是否只能在一個方向上滾動 |
BOOL bounces | 控制控件遇到邊框是否反彈 |
BOOL alwaysBounceVertical | 控制垂直方向遇到邊框是否反彈 |
BOOL alwaysBounceHorizontal | 控制水平方向遇到邊框是否反彈 |
BOOL pagingEnabled | 控制控件是否整頁翻動 |
BOOL scrollEnabled | 控制控件是否能滾動 |
BOOL showsHorizontalScrollIndicator | 控制是否顯示水平方向的滾動條 |
BOOL showsVerticalScrollIndicator |
控制是否顯示垂直方向的滾動條 |
UIEdgeInsets scrollIndicatorInsets | 指定滾動條在scrollerView中的位置 |
UIScrollViewIndicatorStyle indicatorStyle |
設定滾動條的樣式 |
float decelerationRate | 改變scrollerView的減速點位置 |
BOOL tracking | 監控當前目標是否正在被跟蹤 |
BOOL dragging | 監控當前目標是否正在被拖拽 |
BOOL decelerating | 監控當前目標是否正在減速 |
BOOL delaysContentTouches | 控制視圖是否延時調用開始滾動的方法 |
BOOL canCancelContentTouches | 控制控件是否接觸取消touch的事件 |
float minimumZoomScale | 縮小的最小比例 |
float maximumZoomScale | 放大的最大比例 |
float zoomScale | 設置變化比例 |
BOOL bouncesZoom | 控制縮放的時候是否會反彈 |
BOOL zooming | 判斷控件的大小是否正在改變 |
BOOL zoomBouncing | 判斷是否正在進行縮放反彈 |
BOOL scrollsToTop | 控制控件滾動到頂部 |