UIscrollView的属性及其协议方法

来源:互联网 发布:数据库产品有哪些 编辑:程序博客网 时间:2024/05/22 00:25

UIScrollView是iOS中的滑动控件,用来解决当前要显示的内容超出视图的范围时,可以通过滑动方式查看视图的所有内容

1.创建一个UIScrollView对象,并改变背景颜色

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(20, 20, 280, 528)];  

scrollView.backgroundColor = [UIColor orangeColor];   

scrollView.tag = 200;

[ self . view   addSubview

:scrollView];

[scrollView  release ];

2.设置内容页的大小(如果想要视图滑动,内容页大小必须要比scrollView的大小大)

scrollView.contentSize = CGSizeMake(500, 600);

3.创建一个UIImageView,用来显示图片

UIImageView *image = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 280, 528)];  

image.tag = 100;  

image.image = [UIImage imageNamed:@"1.jpg”];("1.jpg”,图片名)

[scrollView  addSubview :image];[image  release

];

4.设置内容区域的偏移量

scrollView.contentOffset = CGPointMake(300, 0);

5.设置视图能否滑动(YES,能滑动;NO不能滑动)

scrollView.scrollEnabled = NO;

6.内容区域相对于frame在哪显示

scrollView.contentInset = UIEdgeInsetsMake(100, 100, 0, 0);

7. 隐藏水平滑动指示器 scrollView. showsHorizontalScrollIndicator = NO

;

8. 隐藏垂直滑动指示器 scrollView. showsVerticalScrollIndicator = NO

;

9. 关闭滑动效果的回弹效果

scrollView.bounces = NO;

10. 设置当点击状态条时 ,scrollView 能否滑动到最顶端 scrollView. scrollsToTop =YES ;    

11. 设置 scrollView 是否可以整屏滑动 ( 一次滑动整个 scrollView 的大小 )

scrollView.pagingEnabled = YES;

12. 设置最大缩放比例 scrollView. maximumZoomScale = 4.0

;

13. 设置最小缩放比例 scrollView. minimumZoomScale = 1.0 ;

< UIScrollViewDelegate >协议中方法的触发时机

如果想要哪种效果,只需在相应方法里做操作

只要 scrollView 滑动就会触发  ( 会触发多次 )

- ( void )scrollViewDidScroll:( UIScrollView *)scrollView 

只要 scrollView 缩放就会触发

- ( void )scrollViewDidZoom:( UIScrollView *)scrollView NS_AVAILABLE_IOS ( 3 _2)

当将要拖拽 scrollView 时触发 , 手指结束 scrollView 并且将要滑动时触发

- ( void )scrollViewWillBeginDragging:( UIScrollView *)scrollView

当结束拖拽时触发 ( 手指将要离开屏幕 )

- ( void )scrollViewWillEndDragging:( UIScrollView *)scrollView withVelocity:(CGPoint )velocity targetContentOffset:( inout CGPoint *)targetContentOffsetNS_AVAILABLE_IOS ( 5 _0)

当结束拖拽时触发 ( 手指已经离开屏幕 )

- ( void )scrollViewDidEndDragging:( UIScrollView *)scrollView willDecelerate:(BOOL )decelerate

当 scrollView 滑动将要减速时触发 ( 将要停止 )

- ( void )scrollViewWillBeginDecelerating:( UIScrollView *)scrollView

当 scrollView 结束减速时触发 ( 停止滑动 )

- ( void )scrollViewDidEndDecelerating:( UIScrollView *)scrollView

当设置 scrollView, 有一个动画效果时触发

- ( void )scrollViewDidEndScrollingAnimation:( UIScrollView *)scrollView

设置要缩放的 scrollView 上面的哪一个子视图 , 只能是子视图 , 不能是 scrollView 本身 .

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

当将要开始缩放时触发 - ( void )scrollViewWillBeginZooming:( UIScrollView*)scrollView withView:( UIView *)view NS_AVAILABLE_IOS ( 3 _2)

当结束缩放时触发

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

只有当 scrollsToTop 属性设置为 YES 时 , 该方法才会触发 , 进一步询问点击状态条是否有效

- ( BOOL )scrollViewShouldScrollToTop:( UIScrollView *)scrollView

当点击状态条并且 scrollView 滑动到顶端时触发

- ( void )scrollViewDidScrollToTop:( UIScrollView *)scrollView

0 0
原创粉丝点击