Ios 用UIButton显示

Ios 用UIButton显示,ios,swift,uibutton,swrevealviewcontroller,uibuttonbaritem,Ios,Swift,Uibutton,Swrevealviewcontroller,Uibuttonbaritem,所以我想在我的应用程序中添加一个幻灯片菜单,如果你点击一个按钮,菜单就会从左边滑动。经过一些研究,我找到了一个使用SWRevealViewController创建滑出菜单的指南,但我很快意识到,视频以及几乎所有其他SWReveal指南都使用了一个UIBarButtonItem作为点击按钮来显示菜单。因此,我需要的帮助是弄清楚如何按照指南中的说明为UIBarButtonItem执行操作,而是为UIButton执行操作 假设有一个名为OpenSideBar的UIBarButtonItem。指南中说要

所以我想在我的应用程序中添加一个幻灯片菜单,如果你点击一个按钮,菜单就会从左边滑动。经过一些研究,我找到了一个使用SWRevealViewController创建滑出菜单的指南,但我很快意识到,视频以及几乎所有其他SWReveal指南都使用了一个
UIBarButtonItem
作为点击按钮来显示菜单。因此,我需要的帮助是弄清楚如何按照指南中的说明为
UIBarButtonItem
执行操作,而是为
UIButton
执行操作

假设有一个名为OpenSideBar的
UIBarButtonItem
。指南中说要在
viewDidLoad
方法中执行此操作:

OpenSideBar.target = self.revealViewController()
OpenSideBar.action = Selector("revealToggle")
所以我不确定这到底是做什么的,但我需要找到一种方法来为
ui按钮
做这件事。如果能解释一下它的作用,我们也会很感激,因为视频中的那个家伙没有做太多解释

该按钮当前是一个插座:

@IBOutlet weak var OpenSideBar: UIButton!
但是请指定我是否应该将其重新创建为操作,并在函数中执行操作,而不是使用
viewDidLoad
方法。 提前谢谢

另外,SWViewController.h文件可以在github上的以下链接找到:

和SWViewController.m在此链接:


OpenSideBar.target=self.revealViewController()
为您的
UIBarButtonItem
设置目标,行
OpenSideBar.action=Selector(“Revealtogle”)
设置点击所述按钮时需要执行的操作

您可以通过以下两种方式之一使用
ui按钮实现此功能。
您可以为
UIButton
设置目标操作,就像为'UIBarButtonItem设置目标操作一样。唯一的区别是它们都有不同的语法。你会这样做的

OpenSideBar.addTarget(self.revealViewController(), action: #selector(SWRevealViewController.revealToggle(_:)), for: .touchUpInside)
或者,您可以连接
@iAction
,并在方法中使用

self.revealViewController().revealToggle(self)

谢谢在运行它之前,我没有任何错误,但现在我有一个运行时错误,上面写着“-[LE.MapViewController OpenSideBar:]:无法识别的选择器发送到实例”,后面是一堆随机字母和数字,我猜这是一个内存位置。知道为什么吗?我使用了第一个版本,它不需要连接
@IBAction
,因为当我试图将它添加到子视图时,连接它会给我带来错误。我必须查看类以锁定有问题的代码段。你必须用额外的信息编辑这个问题。没关系,我发现只是故事板按钮仍然链接到@IBAction方法。