如何在 UIScrollView 的上下文中找到 UIView 的框架?

Posted

技术标签:

【中文标题】如何在 UIScrollView 的上下文中找到 UIView 的框架?【英文标题】:How do I find the frame of a UIView in the context of a UIScrollView? 【发布时间】:2010-10-29 12:39:14 【问题描述】:

我正在尝试放置 UIPopoverController 以在点击 UIButton 时显示。但是,UIButton 被放置在 UIScrollView 中,因此它的框架偏移了滚动量。

有没有一种简单的方法可以找出在屏幕上下文中出现的视图框架?还是我只需要在UIButton 框架和UIScrollViewcontentOffset 之间做减法?

谢谢!

【问题讨论】:

你能更具体地说明你想要什么吗?据我所知,你想要按钮的框架吗? 我想要一个按钮的框架,因为它出现在根视图中,而不是它的框架仅在其父视图中。 【参考方案1】:

如果您使用的是- (void)presentPopoverFromRect:(CGRect)rect inView:(UIView *)view permittedArrowDirections:(UIPopoverArrowDirection)arrowDirections animated:(BOOL)animated,那么您已经在指定要从中呈现的视图。只需在您的UIButton 中显示从 0,0 0,0 开始的弹出框。

【讨论】:

我做了一些非常相似的事情,但是谢谢...我从 UIButton 的 rect 中呈现出来,并将 UIScrollView 用作“inView”... :)

以上是关于如何在 UIScrollView 的上下文中找到 UIView 的框架?的主要内容,如果未能解决你的问题,请参考以下文章

如何根据视图高度值的变化上下移动UIScrollView?

Swift 3 - 如何在 .xib 文件上为 UIScrollView 分配委托?

当我无法使用 UIScrollView 时,如何在自定义 UIView 中模拟惯性滚动?

如何使 UIButton 与 UIScrollView 一起移动

拖动时如何让 UIScrollView 离开屏幕

UIScrollView 内的绘图视图