初始化一個UIScrollView的對象
1 UIScrollView *_scroll=[[UIScrollView alloc] init];
首先介紹一下UIScrollView這個類的基本屬性
屬性: contentSize 滾動視圖的內容大小
//UIScrollView能夠滾動的前提是contentsize大於大的本身尺寸。即大於fram _scroll.contentSize=CGSizeMake(1000, 1000);
這樣就將這個滾動視圖的內容大小變爲(1000,1000)了
屬性: scrollEnabled 控制是否能滾動,默認爲YES
//控制能否滾動的屬性,默認爲YES,這樣就將設置爲不能滾動了 // _scroll.scrollEnabled=NO;
屬性: contentOffset 偏移量
//contentoffset偏移量的正方向與座標系的方向剛剛相反,這樣就將視圖向右 向下各移了100個像素點 // _scroll.contentOffset=CGPointMake(-100, -100);
屬性: contentINset 內容與邊界的距離
//contentINset(內容與邊界的距離)不能改變contentSize的大小(top/left/bottom/right)(上左下右) 這樣內容就可 以向左向右向下向上多移相應的像素點,就可以與邊界相距相應的像素點 // _scroll.contentInset=UIEdgeInsetsMake(100, 100, 0,0);
未設置上一步之前:視圖向上 向左 最多隻能這樣: 但是經過上一步的設置以後 視圖向上 向左 最多可以這樣(紅色爲滾動視圖的背景色):
屬性: scrollsToTop 看代碼
//相當於提供滾動到頂部的快捷方式(導航欄那裏),只將垂直方向移到頂部,橫向方向不變。在同一個頁面, 只能有一個Scroll具備這個能力,如果有兩個都具備這個功能,那麼這個功能會全部失效 _scroll.scrollsToTop=YES;
接下的幾個屬性看代碼根號理解:
//控制水平滾動的顯示,默認是顯示的。
// _scroll.showsHorizontalScrollIndicator=NO;
//控制垂直滾動的顯示,默認是顯示的。
// _scroll.showsVerticalScrollIndicator=NO;
//定向鎖定 打開的話只能沿一個方向(水平或垂直)滾動,不能兩個方向一起滾動,也就說不能沿對角線滾動,
默認是關NO
// _scroll.directionalLockEnabled=YES;
//反彈效果的開關,YES的話就會有這樣的一個效果:滾動到邊界還可以滾一段,然後在反彈回來,默認是YES。
// _scroll.bounces=NO;
//這是我們經常要設置的一個屬性,YES的話:使滾動整頁出現,滾動超過半屏就會跳到下一頁,否則回到上一頁。
默認是NO。
// _scroll.pagingEnabled=YES;
滾動視圖是可以按比例來將其中的某一個子視圖 放大縮小的,實現縮放要進行下面幾部:
1 首先掛出協議<UIScrollViewDelegate>
2 設置 最大縮放比例 最小縮放比例 縮放比例
_scroll.maximumZoomScale = 10;
_scroll.minimumZoomScale = 0.1;
_scroll.zoomScale = 3;
3實現協議方法:-(UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
返回的 UIView就是你要縮放的子視圖,但是要注意的是:如果使用了縮放,contentSize的大小與被縮放的視圖尺寸相同
協議<UIScrollViewDelegate>裏面還有一些可能我們用的到一些 時機的方法:
//滾動就調用 連續調用
- (void)scrollViewDidScroll:(UIScrollView *)scrollView;
//開始拖動時調用
-(void)scrollViewWillBeginDragging:(UIScrollView *)scrollView;
//結束拖動時調用
-(void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset;
//將要開始減速時調用
– scrollViewWillBeginDecelerating
//減速結束時調用
– scrollViewDidEndDecelerating
協議裏還有很多的方法 ,今天就介紹到這裏。