所以我有一个视图控制器,里面有两个独立的视图。我可以通过按下按钮在两个视图之间切换。我第一次切换一切正常。但是我第二次切换(回到第一次)视图被大幅推升。我有我需要的所有限制,我只是不知道它有什么问题。 以下是正在发生的事情的例子。
答案 0 :(得分:1)
按下按钮时,您是否使用两个不同的视图控制器并在它们之间导航? 或者您是否在同一个视图控制器中切换视图?
<强>更新强>
我创建了一个包含2个视图的简单应用,并使用sendsubviewtoback()
更改按下按钮的视图。它工作得非常好。
以下是代码:
class ViewController: UIViewController {
@IBOutlet weak var Second: UIView!
@IBOutlet var First: UIView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.view.sendSubviewToBack(Second)
Second.hidden = true
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func demo(){}
@IBAction func switchview(sender: UIButton){
if sender.titleForState(.Normal) == "Next"{
print("clicked next")
self.view.bringSubviewToFront(Second)
Second.hidden = false
}
else{
print("prev clicked")
self.view.sendSubviewToBack(Second)
Second.hidden = true
}
}
}
当应用程序加载时: 当我点击Next: 当我点击Prev时:
希望这是你正在寻找的。 :)