contentOffset
是什么
- 内容的偏移量:内容的左上角和scrollView的左上角的差值,左上偏都为正,右下偏都为负
用来做什么
- 一般就是结合监听滚动的代理方法,在监听偏移量,然后在特定的偏移量范围中作一些设置:比如调整导航栏的位置,导航栏的背景色透明度,做一些标签切换的动画等等
contentInset
是什么
- 内容的额外区域:填充或削减了内容显示的区域
用来做什么
- 比如有一些需求,一些视图要覆盖在scrollview的顶部,而在scorllview的顶部会显示一些用于和用户交互的按钮,这时候,就要将这些按钮下移,并且在一开始加载出来的时候就下移,如果这时候用contentOffset那么它还是会回弹上去的,如果用contentInset就相当于在内容上面永久的有一块区域,是不会回弹上去的
总结
- 一般我们在视图中添加了scorllView或其子类的时候,一般都不想让导航栏挡住,这时候这两个属性结合起来用
scro.contentOffset = CGPointMake(0, -64); scro.contentInset = UIEdgeInsetsMake(64, 0, 0, 0);