您的位置:首页 > 产品设计 > UI/UE

UIScrollView常用属性以及代理

2015-12-28 09:44 537 查看
UIScrollView的集成关系:

UIScrollView : UIView : UIResponder : NSObject

- (void)viewDidLoad
{
[super viewDidLoad];
/**
1、初始化
*/
UIScrollView *scrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, 320, 568)];
scrollView.backgroundColor = [UIColor grayColor];
[self.view addSubview:scrollView];

/**
2、管理内容的显示

- setContentOffset:animated:   //设置滚动的偏移量,可以带动画效果
.contentOffset         //设置滚动的偏移量CGPoint
.contentSize           //设置滑动区域CGSize
.contentInset
*/
scrollView.contentSize = CGSizeMake(320, 1000);
scrollView.contentOffset = CGPointMake(0, 200);
//scrollView.contentInset = UIEdgeInsetsMake(20, 20, 20, 20);   //注意观察加上这行代码的效果

/**
3、管理滚动

.scrollEnabled             //设置是否可以滑动   (默认YES)
.pagingEnabled             //是否开启翻页效果   (默认NO)
.directionalLockEnabled    //设置滚动方向是否锁定(默认NO),YES则只能在一个方向滚动
.scrollsToTop              //设置当点击状态栏是否滚动到视图顶端(默认Yes)。注意:页面中有两个ScrollView且此属性都设置为Yes,将失去效果

.bounces                   //设置是否开启回弹效果     (默认YES)
.alwaysBounceVertical      //是否开启垂直方向的回弹效果(默认NO)
.alwaysBounceHorizontal    //是否开启水平方向的回弹效果(默认NO)

.decelerationRate          //设置滑动速度
.dragging                  //获取用户是否开始拖动视图(只读)
.tracking                  //获取用户是否触及视图内容(只读)
.decelerating              //获取视图是否开始减速(用户停止拖动但视图仍在滚动)

- scrollRectToVisible:animated:    //设置滚动视图滚动到某个可见区域,可以带动画效果

- touchesShouldBegin:withEvent:inContentView:
- touchesShouldCancelInContentView:    //重写这两个方法可以控制起子视图的事件响应
.canCancelContentTouches               //设置是否给子视图传递取消动作的消息(默认设置为YES,当scrollView触发事件的时候,其子视图不能触发,如果设置为NO,则子视图会继续触发事件)
.delaysContentTouches                  //设置视图是否延迟处理触摸事件(会将消息传递给子视图)
*/
scrollView.scrollEnabled = YES;
scrollView.pagingEnabled = NO;
scrollView.scrollsToTop = YES;

scrollView.bounces = YES;

/**
4、管理滚动视图的指示器

.indicatorStyle                //设置滑动条风格,UIScrollViewIndicatorStyleDefault、Black、White
.scrollIndicatorInsets         //设置滑动条的位置
.showsHorizontalScrollIndicator//设置是否显示水平滑动条(默认NO)
.showsVerticalScrollIndicator  //设置是否显示竖直滑动条(默认NO)
- flashScrollIndicators        //显示一个短暂的滚动指示器
*/
scrollView.indicatorStyle = UIScrollViewIndicatorStyleWhite;
scrollView.scrollIndicatorInsets = UIEdgeInsetsMake(0, 0, 0, 10);
scrollView.showsVerticalScrollIndicator = YES;

/**
5、缩放和拖动手势

.panGestureRecognizer      //获取pan手势  (只读)
.pinchGestureRecognizer    //获取pinch手势(只读)

.zoomScale                 //设置缩放比例
.maximumZoomScale          //设置内容最大缩放比例
.minimumZoomScale          //设置内容最小缩放比例
- setZoomScale:animated:   //设置缩放比例,可以带动画效果

- zoomToRect:animated:     //设置缩放显示到某个区域,可以带动画效果

.zooming                   //获取是否正在缩放模式(只读)
.zoomBouncing              //获取是否当前的缩放比例超出设置的峰值(只读)

.bouncesZoom               //设置是否可以缩放回弹
*/

/**
6、管理键盘
.keyboardDismissMode       //设置键盘消失的模式
UIScrollViewKeyboardDismissModeNone,
UIScrollViewKeyboardDismissModeOnDrag,      //手指滑动视图键盘就会消失
UIScrollViewKeyboardDismissModeInteractive, //手指滑动视图后可以与键盘交互,上下滑动键盘会跟随手指上下移动
*/
UITextField *textField = [[UITextField alloc]initWithFrame:CGRectMake(20, 200, 280, 30)];
textField.backgroundColor = [UIColor whiteColor];
[scrollView addSubview:textField];
scrollView.keyboardDismissMode = UIScrollViewKeyboardDismissModeOnDrag;

/**
7、代理
.delegate

- scrollViewDidScroll:             //视图已经开始滑动时触发的方法

- scrollViewWillBeginDragging:             //视图开始拖动时触发的方法
- scrollViewWillEndDragging:withVelocity:targetContentOffset:
- scrollViewDidEndDragging:willDecelerate: //视图拖动结束时触发的方法

- scrollViewShouldScrollToTop:     //返回yes,开启快捷滚动回顶端,将要滚动时调用
- scrollViewDidScrollToTop:        //视图快捷滚动回顶端开始动作时调用

- scrollViewWillBeginDecelerating: //视图开始减速时触发的方法
- scrollViewDidEndDecelerating:    //视图减速结束时触发的方法

- viewForZoomingInScrollView:              //返回进行缩放的视图
- scrollViewWillBeginZooming:withView:     //视图内容将要开始缩放时触发的方法
- scrollViewDidEndZooming:withView:atScale://视图内容结束缩放时触发的方法
- scrollViewDidZoom:                       //视图已经开始缩放时触发的方法

- scrollViewDidEndScrollingAnimation:      //视图动画结束时触发的方法,使用set方法设置偏移量后回触发
*/
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  iOS开发 uiscrollview