当我更改其背景图像时,为什么按钮 return 回到其原始位置?

Why does a button return to its original position when I change its background image?

我有一个按钮已放置在 UIViewController 上的情节提要中,并附加了 -500 的底部 space 约束,这意味着它在超级视图。一个函数将其调出,以便在需要时可见。

同一个按钮有一个背景图片,点击它会发生变化:

@IBAction func button(sender: AnyObject) {

        let image1a = UIImage(named: "NewImage")
        button.setImage(image1a, forState: .Selected)
}

但是,当按钮更改其背景时,它 returns 回到其原始位置。这意味着它在 superView 中不再可见。我该如何解决这个问题?

我的通灵能力告诉我你 "bringing it up" 通过改变视图的框架。您需要修改约束常量,或者任何时候导致视图布局无效(例如更改图像,最有可能)布局引擎将重新应用约束。