Swift 访问UIButton的Y坐标?
我有一个游戏的标题屏幕,硬模式直到后来才解锁。在玩家得分达到50分之前,标题屏幕上的硬按钮会被UILabel“覆盖”(这是一个按钮,但会变灰)。在我的viewdidload中,我需要将标签的y坐标设置为UIButton(硬按钮)的y坐标,这样它只能在先决条件被清除时显示。我使用故事板中的y坐标手动设置,但这不适用于不同的屏幕大小。这是我的代码:Swift 访问UIButton的Y坐标?,swift,xcode,uibutton,Swift,Xcode,Uibutton,我有一个游戏的标题屏幕,硬模式直到后来才解锁。在玩家得分达到50分之前,标题屏幕上的硬按钮会被UILabel“覆盖”(这是一个按钮,但会变灰)。在我的viewdidload中,我需要将标签的y坐标设置为UIButton(硬按钮)的y坐标,这样它只能在先决条件被清除时显示。我使用故事板中的y坐标手动设置,但这不适用于不同的屏幕大小。这是我的代码: override func viewDidAppear(_ animated: Bool) { // Grays out the Hard B
override func viewDidAppear(_ animated: Bool) {
// Grays out the Hard Button if high score is less than 50
if highScore >= 50 {
hardButtonCover.frame.origin.y = 100000
}
else{
hardButtonCover.frame.origin.y = 5
}
}
因此,我不需要“hardButtonCover.frame.origin.y=5”部分,而需要它以某种方式为“hardButtonCover.frame.origin.y=hardButton.frame.origin.y”,其中hardButton是一个UIButton,加载时hardButtonCover将完全覆盖UIButton
提前向大家表示感谢。我认为您应该使用自动布局约束。然后,在某些情况下,让你想要更新的constraint退出。我认为这应该有效,并且是一种更好的实现方式。如果您想这样做,那么如果需要,我可以帮助您。当您使用
hardbuttonover.frame.origin.y=hardButton.frame.origin.y
时会发生什么?因为在故事板上这看起来确实正确,所以把按钮盖在UIButton上。您可以使用“自动布局”将其居中,因此无论设备如何,它都将始终位于按钮的中心。然后,当播放器应访问硬按钮时,设置hardButtonCover.ishiden=true。isHidden属性在这里可能很有用。