如何获得导航栏按钮以进行搜索?

Alw*_*ing 1 uinavigationcontroller ios swift

我有一个指向UIViewController的UINavigationController。在该UIViewController中,我希望Navigationitem的右键为.Add UIBarButtonItem,该按钮与另一个名为“ nextScene”的场景接合。

据我了解,如果要以编程方式创建此segue,则需要使该操作成为“ performSegueWithidentifier”方法。这是我所拥有的:

let plusButton = UIBarButtonItem(barButtonSystemItem: .Add, target: self, action: "performSegueWithIdentifier:")
self.navigationItem.setRightBarButtonItem(plusButton, animated: true)

到达另一个称为“ nextScene”的场景的正确语法是什么?我的performSegueWithidentifier方法应如何处理呢?

编辑:收到以下错误:无法识别的选择器发送到实例... 2015-08-06 07:57:18.534 .. [...] ***由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'-[ ... goToSegue:]:无法识别的选择器已发送到实例....

这是我用于segue的代码:

let plusButton = UIBarButtonItem(barButtonSystemItem: .Add, target: self, action: "goToSegue:")`

self.navigationItem.setRightBarButtonItem(plusButton, animated: true) }

func goToSegue() {
    performSegueWithIdentifier("segueName", sender: self)
}
Run Code Online (Sandbox Code Playgroud)

iDh*_*val 5

  1. 在之间创建序列UIViewController(右键单击firstViewController并将其拖动到secondviewcontroller

右键单击视图控制器并将其拖动到第二个视图控制器

选择动作

  1. 为此指定标识符名称 segue

提供标识符名称

  1. segue用那个segue名字表演

现在,为了执行segue,UIBarButtonItemviewDidLoad方法中添加以下代码至firstViewController

override func viewDidLoad() {
    super.viewDidLoad()

    self.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Add, target: self, action: "navigateToNextViewController")
    // Do any additional setup after loading the view, typically from a nib.
}
Run Code Online (Sandbox Code Playgroud)

现在创建navigateToNextViewControllerMethod并从该方法执行segue

func navigateToNextViewController(){
    self.performSegueWithIdentifier("goNext", sender: self)
}
Run Code Online (Sandbox Code Playgroud)