Посмотрев на код пару минут, я вижу проблему.В твоей функции.,.
private func menu_fadeout(){
func menu_fadeout_helper(_ button:UIButton){
button.fadeOut()
button.isHidden = true
button.isEnabled = false
}
menu_fadeout_helper(hint)
menu_fadeout_helper(new)
menu_fadeout_helper(level)
menu_fadeout_helper(card)
}
.,.Вы никогда не ссылаетесь непосредственно на подсказку UIButtons, new, level и card.В конце концов, после нажатия кнопок много раз, память не будет заполняться ничем, и ваше приложение будет зависать.(или хуже)
Измените функцию на эту, чтобы (предположительно) устранить утечку памяти.
private func menu_fadeout(){
func menu_fadeout_helper(_ button: UIButton) -> UIButton {
button.fadeOut()
button.isHidden = true
button.isEnabled = false
return button
}
menu_fadeout_helper(self.hint)
menu_fadeout_helper(self.new)
menu_fadeout_helper(self.level)
menu_fadeout_helper(self.card)
}