获取 UIScrollView 中可见视图之外的 UIButtons 的框架/原点
Posted
技术标签:
【中文标题】获取 UIScrollView 中可见视图之外的 UIButtons 的框架/原点【英文标题】:Getting frame/origin of UIButtons that are outside of visible view in a UIScrollView 【发布时间】:2013-06-08 04:52:51 【问题描述】:如何获取位于 UIScrollView 当前可见区域之外的 UIButton 的正确框架(更重要的是,原点)?似乎当它们不可见时,我得到了错误的值(即,我使用收到的框架值布局子视图,当我向下滚动到它时,它位于错误的位置。)有什么想法吗?
【问题讨论】:
【参考方案1】:我再次回答了我自己的问题。如果您有出口和/或对按钮的引用,则需要在 scrollViewDidScroll 方法中重新引用您的按钮/标签/自定义视图框架。就我而言,我试图将自定义视图框架与按钮框架对齐,因此实现如下所示:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
// Enumerate through each object you're looking to reposition and compare them:
if(!(CGRectEqualToRect(bsv.frame, btn.frame))) bsv.frame = btn.frame;
我希望这会对那里的人有所帮助。
【讨论】:
以上是关于获取 UIScrollView 中可见视图之外的 UIButtons 的框架/原点的主要内容,如果未能解决你的问题,请参考以下文章
在 UIScrollView 中获取 UIImage 可见部分的正确坐标
裁剪边界之外的 UIScrollview 子视图未接收到触摸
我是不是需要删除 UIScrollView 中不可见的子视图以使其平稳运行?
如何使用主 iPhone 视图之外的 UI 元素在 Interface Builder 中设置 UIScrollView?