Ios 按钮功能只能工作一次
我正在制作一个带有主视图控制器和菜单按钮的应用程序。单击该按钮,会出现另一个视图控制器作为侧菜单,然后用户可以选择返回到上一个主视图控制器。但是,此时菜单按钮不再工作 主视图控制器的代码在此处(不是容器视图控制器):Ios 按钮功能只能工作一次,ios,swift,Ios,Swift,我正在制作一个带有主视图控制器和菜单按钮的应用程序。单击该按钮,会出现另一个视图控制器作为侧菜单,然后用户可以选择返回到上一个主视图控制器。但是,此时菜单按钮不再工作 主视图控制器的代码在此处(不是容器视图控制器): 您必须使用bool标志来跟踪菜单的打开/折叠,如下所示: @objc protocol CenterViewControllerDelegate { optional func toggleLeftPanel() optional func collapseSide
您必须使用bool标志来跟踪菜单的打开/折叠,如下所示:
@objc
protocol CenterViewControllerDelegate {
optional func toggleLeftPanel()
optional func collapseSidePanels()
}
class CenterViewController: UIViewController {
var _isMenuOpen = false
@IBOutlet weak var titleLabel: UILabel!
var delegate: CenterViewControllerDelegate?
@IBAction func MenuTapped(sender: AnyObject) {
if _isMenuOpen{
delegate?.toggleLeftPanel?()
_isMenuOpen = true
}
else{
delegate?.collapseSidePanels?()
_isMenuOpen = false
}
}
// MARK: Button actions
}
希望这能对您有所帮助。您能添加ToggleftPanel()函数的代码实现吗?您可能有一个标志来检查侧菜单是否打开/折叠,因此基于ToggleftPanel()函数实现中的该标志,您可以调用collapseSidePanels()函数
@objc
protocol CenterViewControllerDelegate {
optional func toggleLeftPanel()
optional func collapseSidePanels()
}
class CenterViewController: UIViewController {
var _isMenuOpen = false
@IBOutlet weak var titleLabel: UILabel!
var delegate: CenterViewControllerDelegate?
@IBAction func MenuTapped(sender: AnyObject) {
if _isMenuOpen{
delegate?.toggleLeftPanel?()
_isMenuOpen = true
}
else{
delegate?.collapseSidePanels?()
_isMenuOpen = false
}
}
// MARK: Button actions
}