UIScrollView的相关笔记

  1. 当UIScrollview横向滚动时,如果在上面添加5个按钮,但当前scrollview 一页只能显示3个按钮,此时有一项要求,需要在点击第3个按钮时,scrollview自动向左滑动,显示后面的按钮等,需要在按钮点击方法或者UIScrollview的滑动代理方法scrollViewDidEndDecelerating里面添加下面内容。

CGFloat needMoveVisableOffset = btn.center.x - self.headerBkView.width/2;

if(needMoveVisableOffset < 0){

needMoveVisableOffset = 0;

}

CGFloat maxMoveOffset = self .headerBkView.contentSize.width - self.headerBkView.size.width;

if(needMoveVisableOffset > maxMoveOffset){

needMoveVisableOffset = maxMoveOffset;

}

**self** .headerBkView setContentOffset:CGPointMake(needMoveVisableOffset, 0) animated:**YES**\];

  1. 当拖动scrollview滑动的时候,正常情况下,下面两种方法都会执行,如果当拖动scrllview停止之前未减速或者未等scrollview滑动结束,立即切换了页面,此时scrollview不会掉用scrollViewDidEndDeceleration方法,只执行scrollViewDidEndDragging,此时需要在decelerate为NO时,重新执行后续动作。

//当离开UIScrollView的时候

  • (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{

if(!decelerate){

// dosomething

}

}

//当UIScrollView停止滚动的时候

-(void)scrollViewDidEndDeceleration:(UIScrollView *)scrollView{

// dosomething

}

相关推荐
pop_xiaoli5 小时前
【iOS】SDWebImage源码
macos·ios·objective-c·cocoa
MonkeyKing1 天前
消息发送与转发流程
ios
移动端小伙伴1 天前
我受够了 Xcode 的 SPM 网络问题,写了个脚本一劳永逸
ios
A charmer1 天前
从 C++ 到 Objective-C:零基础平滑转学专栏【总目录】
开发语言·c++·objective-c
人月神话-Lee1 天前
两个改动,让这个iOS OCR SDK识别成功率翻了一倍
ios·ocr·ai编程·身份证识别·银行卡识别
A charmer1 天前
第一章:基础语法破冰|从 C++ 无缝切换 OC 语法
c++·objective-c
sweet丶2 天前
流程图解:Asset Catalog 的完整生命周期
ios
sakiko_3 天前
UIKit学习笔记3-布局、滚动视图、隐藏或显示视图
前端·笔记·学习·objective-c·swift·uikit
空中海3 天前
iOS 动态分析、抓包与 Frida Hook
ios·职场和发展·蓝桥杯
空中海3 天前
iOS 静态逆向、IPA 结构与 Mach-O 分析
ios·华为·harmonyos