滚动视图是我们非常常用的视图;有好多东西要显示,但是只能显示一个屏幕的内容,不够我们的需求,所以用到了滚动视图
解决登录注册界面的一个常见问题
self.edgesForExtendedLayout = UIRectEdgeNone; 有些时候导航栏会挡住图片的一部分,通过这条语句可以不遮挡
这里我只是简单介绍下 滚动的视图一些属性和代理方法
设置滚动视图的内容相关 三大属性
contentSize: 决定视图是不是可以明显滚动 滚动视图的内容 超过滚动视图的窗口范围 才可以有明显的滚动
contentOffset:设置滚动视图的偏移量将滚动视图的一点偏移到窗口的左上角
contentInset:内边距 UIEdgeInsets:(上,左,下,右) 设置内容具体 离视图边境的距离
常用的几种代理方法
滚动后的时候调用
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
开始拖拽调用
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
拖拽之后的速度 以及当前内容的偏移量
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
拖拽结束 开始降速的时候调用 -> 可以分析视图在哪一个页面
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView
UIScrollView *showView = [[UIScrollViewalloc]initWithFrame:[UIScreenmainScreen].bounds];
showView.indicatorStyle = UIScrollViewIndicatorStyleWhite;选择滚动视图的滚动条的颜色有两种1.白色 2.黑色 默认为黑色
showView.showsVerticalScrollIndicator = NO;隐藏竖直方向的滚动条 默认是yes 不隐藏
self.showsHorizontalScrollIndicator = NO;隐藏水平方向的滚动条 默认是yes 不隐藏
showView.pagingEnabled = YES;是否以窗口的frame大小一页一页的滚动默认是no不是
SV.bounces = NO;//回弹属性 默认yes 回弹就是他可以产生一个动画并超出实际内容的大小但最终会停到实际内容的边际处
经常与 UIPageControl联用,因为 UIPageControl中有个属性
currentPage 和滚动视图第几个窗口大小的页面,可以相互对应
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
currentPage的一个对象.currentPage = 滑动视图当页的contentOffset.x/414 通过滚动视图偏移量的属性获得当前偏移量的x,整页的滚动所以除以414(屏幕的宽度)就可以把UIPageControl与UIScrollView相关联
}//完成滚动时调用的方法
原文:http://www.cnblogs.com/homeofjunwei/p/5086783.html