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

}

相关推荐
风启新尘3 小时前
ios巨魔越狱
支持向量机·ios·智能手机
Digitally3 小时前
没有充电器,如何给 iPhone 充电?
ios·iphone
bcbnb3 小时前
基于Mach-O文件的动态库与静态库归属方案及API扫描实践
后端·ios
2501_915921434 小时前
VSCode 写 Swift 运行到 iPhone?快蝎 IDE 开发实战体验
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
spencer_tseng5 小时前
anti-screenshot (Android + iOS)
android·ios
2501_915918415 小时前
基于Mach-O文件的动态库与静态库归属方案及API扫描实践
android·ios·小程序·https·uni-app·iphone·webview
2501_915106325 小时前
iOS 证书无法跨电脑使用?签名迁移方法一文讲透
android·ios·小程序·https·uni-app·iphone·webview
WeirdoPrincess5 小时前
iOS 打包签名资料准备指南(HBuilderX / uni-app)
ios·uni-app
for_ever_love__5 小时前
Objective-C学习: OC方法调用的本质
开发语言·学习·ios·objective-c
RickeyBoy19 小时前
独立 App 配置阿里云 CDN 记录
ios