//.h文件
@interface ViewController : UIViewController<UIScrollViewDelegate>{
UIScrollView *scrollView;
UIImageView *imageView;
}
//.m文件
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
// CGRect *screenBounds = [[UIScreen mainScreen] bounds]; //返回整個屏幕的邊界,包括狀態欄所顯示的空間
CGRect bounds = [[UIScreen mainScreen] applicationFrame]; //返回屏幕的可顯示區域
scrollView = [[UIScrollView alloc] initWithFrame:bounds];
scrollView.delegate = self; //設置委托
// scrollView.backgroundColor = [UIColor redColor];
imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"1.png"]];
[scrollView addSubview:imageView];//添加圖片
scrollView.contentSize = imageView.frame.size; //設置內容的尺寸大小
//設置是否顯示滑動條
scrollView.showsHorizontalScrollIndicator=NO;
scrollView.showsVerticalScrollIndicator=NO;
//pagingEnabled屬性,頁面翻轉
scrollView.pagingEnabled = NO;
//縮放的最大最小值
scrollView.minimumZoomScale = 0.25;
scrollView.maximumZoomScale = 2.5;
//indicatorStyle指定滾動指示條類型
scrollView.indicatorStyle = UIScrollViewIndicatorStyleDefault; //滾動指示器類型,默認白邊界上繪制黑色滾動條 3種
//directionalLockEnabled屬性
scrollView.directionalLockEnabled = YES; //設置為YES將滾動鎖定在一個方向上進行。
//bounces屬性,YES時滾動到邊緣可超為超出界面外一點然后彈回原位
scrollView.bounces = NO; //NO時滾動不會超出可見范圍
//bouncesZoom屬性,類似bounds 指的用戶的縮放
// scrollView.bouncesZoom = NO; //NO時縮放不可超出最大最小縮放范圍
//pagingEnabled屬性,頁面翻轉
scrollView.pagingEnabled = NO;
// scrollView.contentOffset = YES;
self.view = scrollView;
}
//響應縮放方法
-(UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{
return imageView;
}
/*********代理方法*********/
//在視圖滾動時接到通知,包括一個指向被滾動視圖的指針,從中可讀取contentOffset屬性已確定其滾動到的位置,常用
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
}
//拖動之前收到通知,可讀取contentOffset
-(void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{
}
//用戶抬起手指時得到通知,還會得到一個布爾值指明在報告滾動視圖最后位置之前,手否需要進行減速
-(void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{
}
//當用戶抬起手指為滾動視圖需要繼續滾動時收到通知,可讀取contentOffset屬性,可判斷用戶抬起手指前最后一次滾動到的位置,但不是最終位置
-(void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{
}
//當前一個提到的減速完畢、滾動視圖停止移動時會得到通知,收到這個通知的時刻,滾動視圖contentOffset屬性會反映出滾動條最終停止位置
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
}
//用戶進行縮放時會得到通知,縮放比例表示為一個浮點數,作為參數傳遞
-(void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale{
}
//當用戶點觸iPhone的狀態條時滾動視圖代理可以決定視圖是否應滾定回到開頭
-(BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView{
}
-(void)scrollViewDidScrollToTop:(UIScrollView *)scrollView{
}