insertSubview:belowSubview仍然将视图置于swift 3.0之上

时间:2017-08-10 21:27:59

标签: ios swift segue

我正在尝试在我的应用中制作一个segue,以便当前视图滑开以显示其下方的视图。

这是我的代码:

let window = UIApplication.shared.delegate?.window!
window?.insertSubview(destinationView, belowSubview: sourceView)
destinationView.center = CGPoint(x: sourceView.center.x, y: sourceView.center.y)

UIView.animate(withDuration: 0.6, animations: {
    sourceView.center = CGPoint(x: sourceView.center.x, y: 0 - sourceView.center.y)
}, completion: { (value: Bool) in
    self.source.navigationController?.pushViewController(self.destination, animated: false)
})

然而,我正在看到的视图只是出现在我目前正在观看的视图的顶部。关于我做错了什么想法?

谢谢!

1 个答案:

答案 0 :(得分:0)

好吧,我解决了。这是我的解决方案,以防其他人遇到此问题:

window?.insertSubview(destinationView, belowSubview: sourceView)
window?.insertSubview(sourceView, aboveSubview: destinationView)

我刚刚添加了第二行代码并且有效。