首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >获取滚动视图中的对象位置

获取滚动视图中的对象位置
EN

Stack Overflow用户
提问于 2021-11-29 18:46:59
回答 1查看 318关注 0票数 0

我有这样的等级:

  • 滚动视图
  • -容器视图
  • -循环视图

这个滚动视图也可以缩放。当我按下这个view2循环视图(我有点击手势识别器)时,我需要在循环视图的中心显示。但是view2应该是容器视图上的碱液,因为我们还需要用循环视图放大它。

我试图在需要用这种方法向view2展示的地方重新定位。

代码语言:javascript
运行
复制
func getSourceRect(for cycleView: UIView) -> CGRect {
   let rectOnContainer = cycleView.convert(cycleView.frame, to: containerView)
   let rectOnScrollView = containerView.convert(rectOnContainer, to: scrollView)
        
   return rectOnScrollView
}

然后我做下一个

代码语言:javascript
运行
复制
let sourceRect = getSourceRect(for: cycleView)
view2.center = CGPoint(x: sourceRect.midX, y: sourceRect.midY)

它不起作用。请帮助我理解这种行为,并找到我可以向view2展示的位置。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-29 20:25:22

那么,您希望view2以循环视图为中心而附加到容器视图中吗?

如果这是真的,那么

代码语言:javascript
运行
复制
// if view2 and cycle view's parent is container view 
// then there should not be a need to transform view2's 
// coordinate space
view2.center = cycleView.center

// make sure z position is correct so that cycle view isn't obscuring
// view2's visibility.
view2.parent?.bringSubviewToFront(view2)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70159848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档