按下时隐藏uibutton,然后在按下另一个按钮时显示它



我有三个按钮可以改变背景的颜色。我想将红色按钮按下时隐藏。如果按下绿色或蓝色按钮,则该节目。绿色和蓝色按钮也是如此。

我找不到致电removeFromSuperview的方法。在Objectivec中,我曾经做mybutton.hidden = true但这不起作用。

ViewController: UIViewController {
    @IBAction func RED(_ sender: Any) {
    print("background was (String(describing: self.view.backgroundColor))")
    self.view.backgroundColor = UIColor.red
    print("background is now (String(describing: self.view.backgroundColor))")
}
@IBAction func GREEN(_ sender: Any) {
    print("background was (String(describing: self.view.backgroundColor))")
    self.view.backgroundColor = UIColor.green
    print("background is now (String(describing: self.view.backgroundColor))")
}
@IBAction func BLUE(_ sender: UIButton) {
    print("background was (String(describing: self.view.backgroundColor))")
    self.view.backgroundColor = UIColor.blue
    print("background is now (String(describing: self.view.backgroundColor))")
}

您需要为每个按钮创建一个IBOUTLET,以访问" Ishidden"属性。现在,您只为每个定义一个IBACTION(至少在您提供的代码中(。要创建IBOUTLET,请使用从按钮到视图控制器的代码的Control-Drag,类似于您为创建已经拥有的Ibactions所做的工作。在弹出窗口中,请确保"连接"说"出口"one_answers"类型"是" uibutton"。将它们命名为需要的(例如,Redbutton,Bluebutton(。然后,您可以在适当的位置键入" RedButton.ishidden = true"。

IBACTION仅允许您控制按下按钮时的操作。访问Uibutton的属性需要一个IBOUTLET。

最新更新