UIScrollView常用属性-contentSize
- scrollView 要滚动就必须设置了滚动视图的 contentSize
- contentSize 的 width 决定了水平方向滚动距离
- contentSize 的 height 决定了垂直方向滚动距离
- 只有contenSize大于scrollView时才可以滚动
########scrollView没有滚动,是里面的内容在滚动
UIScrollView常用属性-contentOffset
- scrollView 通过修改 contentOffset 调整内部视图的坐标位置,从而给用户产生一种视觉上的滚动的效果
- 常用的方法:
// animate at constant velocity to new offset
//以恒定速度动画移动到新的 offset
-(void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated;
// scroll so rect is just visible (nearest edges). nothing if rect completely visible
/// 滚动到可见区域(靠近边缘-不会滚动到边缘外侧),如果当前区域完全可见,则什么也不做
-(void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated;
UIScrollView常用属性-contentInset
- 对于contentInset,API文档的解释是"默认UIEdgeInsetsZero。添加额外的滚动附近区域的内容"。可以理解为内容视图的上下左右四个边扩展出去的大小。
- 感觉就下拉刷新和弹出键盘的时候使用
scrollView自动布局及技巧
1.stroyboard中拖入scrollView
2.设置scrollView上下左右约束为0
3.拖入一个UIView到scrollView中
4.设置view的上下左右约束为0(会报错,原因就是没有足够 的约束指定view的位置)
5.给view设置任意宽高,即解决上述错误
6.contentSize大于scrollView的size才可以滚动
- 如果我们拖入UIImageView 可以不用设置宽高,因为它里面如果设置了图片,imageView的size会根据图片
自适应,对应设置 scrollView的contentSize
一个小功能
UIScrollView有个属性
@property(nonatomic) BOOL scrollsToTop
// default is YES.
- 看了这个图大家就都明白这个属性干什么用的吧
-
开发中用不到,不过我们玩手机的时候有时候会用到