ios - 发件人:按下 UIBarButtonItem 时 AnyObject 崩溃

标签 ios swift sender

我无法理解如何创建 BarButtonItem 并将发件人设置为 AnyObject。我以编程方式创建了一个 BarButtonItem 并尝试将发件人设置为任何对象,但是当按下按钮时应用程序崩溃了。

import UIKit

class ViewController: UIViewController {

override func viewDidLoad() {
    super.viewDidLoad()

    // Do any additional setup after loading the view.

    var toggle = UIBarButtonItem(title: "Settings", style: UIBarButtonItemStyle.Plain, target: self, action: "toggleSideMenu")
    self.navigationItem.leftBarButtonItem = toggle

  }

func toggleSideMenu(sender: AnyObject) {
    toggleSideMenuView()
}

最佳答案

那个“选择器”有一个参数,所以它应该是:

action: "toggleSideMenu:"
                       ^

此外,方法本身需要一个 @objc 注释,而且我很确定 sender 是可选的,所以:

@objc func toggleSideMenu(sender: AnyObject?) {
    toggleSideMenuView()
}

关于ios - 发件人:按下 UIBarButtonItem 时 AnyObject 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30946507/

相关文章:

iphone - 访问/设置iOS设置应用的全局设置

ios - 使用 MKAnnotation 继续下一个 View Controller

ios - 如何在运行时 Objective-C 中重写/混合私有(private)类的方法?

object - Swift - 在 NSArray 中插入对象/项目/添加对象/项目

ios - 我如何使用 sender 参数来确定选择了什么 UIImageView?

Swift,将发送者中的参数传递给函数

ios - 有什么可能的方法可以在一个地方更改 iOS 移动应用程序的所有 UILabel 颜色?

ios - 如何在 Google Maps iOS SDK 上显示用户位置

swift 3 (SpriteKit) : SKShapeNode not moving when its image is changed

ios - 尝试 segue SWIFT 时出现 lldb 错误