我有一个MasterVC,其UIImageView
的alpha为0,在按UIButton
时将alpha切换为1。按下相同的按钮,按下“过电流上下文”,通过MasterVC显示图像的SecondaryVC。
如果SecondaryVC被解雇,我想将MasterVC的UIImageView
的alpha设置回0,但是很难找到如何仅使用dismiss来调用函数来返回MasterVC。
这是我设置alpha并推送到SecondaryVC的按钮。使用segue似乎是不可能的,因为我听说它会造成内存问题。
我尝试使用协议,但它与CGFloat的效果不佳。
@IBOutlet weak var background: UIImageView!
@IBOutlet weak var backgroundTable: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
background.image = lightBG
backgroundTable.image = tableBG
backgroundTable.alpha = 0
}
@IBAction func unknownProperties(_ sender: UIButton) {
UIView.animate(withDuration: 1.0, animations:{
self.backgroundTable.alpha = 1
})
getOverlay()
}
答案 0 :(得分:0)
使用NotificationCenter
可能是一个解决方案。
第1步:在viewDidLoad
NotificationCenter.default.addObserver(
self,
selector: #selector(self.functionToExecute),
name: NSNotification.Name.init("UpdateBackgroundTableAlpha"),
object: nil
)
步骤2:在SecondaryVC被解雇之前发布通知。
NotificationCenter.default.post(name: NSNotification.Name.init("UpdateBackgroundTableAlpha"), object: nil)
步骤3:在MasterVC类范围中定义functionToExecute
。
func functionToExecute(){
print("Make BackgroundTable Great Again!")
}