iOS UIScrollView的一个特性

1如果UIScrollView 的contentSize.height >

scrollView.bounds.size.height - scrollView.contentInset.top - scrollView.contentInset.bottom

, 则scrollView就可以滚动,否则无法滚动

并且最大的滚动范围就是 contentSize.height - (

scrollView.bounds.size.height - scrollView.contentInset.top - scrollView.contentInset.bottom

这里说的是自然滚动,就是在用户松手的情况下

能滚动的最大范围

并且,我们通过代码 [uiscrollView setContentOffset:animated:YES]

或者 [uiscrollView setContentOffset:cgpointmake]设置的

都只能是自动滚动能达到的位置,即 在contentSize.height - (

scrollView.bounds.size.height - scrollView.contentInset.top - scrollView.contentInset.bottom)之内,否则即使设置了,也会因为

contentSize不够而导致失败

2

两个滚动方法的不同

[uiscrollView setContentOffset:animated:YES]

会出发scrollView 的 scrollViewDidScroll代理方法

[uiView animatedwithduration:0.2 animated:^{
[uiscrollView setContentOffset:animated:NO]
}];

不会触发scrollViewDidScroll代理方法

相关推荐
篮l球场3 小时前
mac m1下载maven安装并配置环境变量
macos
YAIMZA3 小时前
mac配置 iTerm2 使用lrzsz与服务器传输文件
服务器·macos·lrzsz
嘟嘟实验室5 小时前
LatentSync数字人,一键批量,口型同步,MPS加速(WIN/MAC)
人工智能·macos·aigc·数字人
app开发工程师V帅7 小时前
Xcode :给模拟器 创建桌面 快捷方式
ide·macos·xcode
Mr_sun.9 小时前
Mac开启任何来源安装&配置环境变量
macos
王行知10 小时前
Mac 刷题环境配置
macos·职场和发展·蓝桥杯
m0_7482361110 小时前
Mac 上如何安装Mysql? 如何配置 Mysql?以及如何开启并使用MySQL
mysql·macos·adb
前端 贾公子10 小时前
解决MAC安装软件时提示“xxx.app 显示已损坏”的方法
macos
bug404_20 小时前
mac配置stable diffusion以及模型出图优化
macos·stable diffusion