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

时间:2015-01-23 19:39:57

标签: ios swift uibutton

我有一个按钮,它放在一个UIViewController的故事板中,并且底部空间约束为-500,这意味着它在superView中不可见。一个函数将其调出,以便在需要时可见。

相同的按钮有一个背景图像,通过点击它可以改变它:

@IBAction func button(sender: AnyObject) {

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

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

1 个答案:

答案 0 :(得分:3)

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