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代理方法

相关推荐
我现在不喜欢coding22 分钟前
Swift 核心协议揭秘:从 Sequence 到 Collection,你离标准库设计者只差这一步
ios·swift
开心就好20251 小时前
使用Edge和ADB进行Android Webview远程调试的完整教程
前端·ios
SaN-V3 小时前
MacOS 下 VS Code 中 Codex 通过 SSH 连接远程服务器无法使用的问题排查与解决
服务器·macos·chatgpt·ssh·codex
开心就好20253 小时前
iOS应用上架全流程:从证书申请到发布避坑指南
后端·ios
梦想不只是梦与想4 小时前
flutter 与 Android iOS 通信?以及实现原理(一)
android·flutter·ios·methodchannel·eventchannel·basicmessage
一只小白菜5 小时前
[特殊字符] 解决 Mac M5 芯片上 Ollama 运行报错:升级 macOS Tahoe 26.4.1 后恢复正常
macos
冰凌时空6 小时前
30 Apps 第 1 天:待办清单 App —— 数据层完整设计
前端·ios
2501_915909066 小时前
Xcode从入门到精通:全面解析iOS开发IDE的核心功能与实际应用指南
ide·vscode·ios·个人开发·xcode·swift·敏捷流程
懋学的前端攻城狮7 小时前
登录与注册:不止于UI,更关乎安全与用户体验的闭环
ios
卢锡荣8 小时前
单芯双 C 盲插,一线通显电 ——LDR6020P 盲插 Type‑C 显示器方案深度解析
c语言·开发语言·ios·计算机外设·电脑