gpt4 book ai didi

ios - 提取 childView 并将其重新定位到新的 parentView 中

转载 作者:行者123 更新时间:2023-11-28 20:48:31 24 4
gpt4 key购买 nike

我试图从嵌入在 scrollView 中的 stackView 中提取一个 View ,然后将所述 View 重新定位在同一位置,但在 View 层次结构中与 scrollView 处于同一级别的另一个 View 中。

我试图实现的效果是我正在为 View 的移除设置动画—— View 将 super 强加到另一个 View 中,而 scrollView 将向上滚动并将新 View 添加到 stackView all而被撕裂的 View 淡出。

不幸的是,由于 rippedView 位于 (x: 0, y: 0),因此实现这种效果仍然难以实现。当我尝试在这个 View 上强制使用一个新框架时,这很困难,因为我猜测像素完美正确的框架。这是我的 viewController 中的一些代码:

/* 
I tried to make insertionView and imposeView have the same dimensions as the scrollView and
the stackView respectively as I thought if the rippedView’s original superView is the same
dimensions as it’s new superView, the rippedView would be positioned in the same place
without me needing to alter its frame.
*/


let insertionView = UIView(frame: scrollView.frame)
let imposeView = UIView(frame: stackView.frame)

rippedView.removeFromSuperview()
insertionView.addSubview(imposeView)
imposeView.addSubview(rippedView)

let newFrame = CGRect(x: 0, y: 450, width: rippedView.intrinsicContentSize.width, height:
rippedView.intrinsicContentSize.height)

rippedView.frame = newFrame
self.view.addSubview(insertionView)

最佳答案

删除rippedView之前,获取它的实际帧:

let newFrame = self.view.convert(rippedView.bounds, from: rippedView)

关于ios - 提取 childView 并将其重新定位到新的 parentView 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59737717/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com