从其他Swift文件调用类

时间:2017-09-10 17:16:04

标签: ios swift class

我有一段代码用于从一个ViewController转到另一个Storyboard中的另一个ViewController。现在,由于我有很多故事板和ViewControllers,我想创建一个管理导航代码的不同文件。但是我的问题是从我的视图控制器文件中的导航文件中获取代码。我希望你能帮助我。

以下是导航代码:

class Navigation{
    func viewNavigation(){
        var storyboardName:String
        var controllerName:String

        let storyboard = UIStoryboard(name: storyboardName, bundle: nil);
        let controller = 
storyboard.instantiateViewController(withIdentifier: controllerName) as 
UIViewController; present(controller, animated: false, completion: nil)

    }
}

我也有问题"现在"代码权利,现在任何提示都是最有帮助的。

以下是我的视图控制器的代码:

import UIKit

class GeographicalFeeder: UIViewController {
    @IBOutlet weak var GoBackButton: UIBarButtonItem!
    @IBOutlet weak var ViewTitle: UINavigationItem!
    @IBOutlet weak var AdministratorButton: UIBarButtonItem!

    @IBOutlet weak var ComposeButton: UIButton!

    //Navigation Actions
    @IBAction func ToHomeFeederVC(_ sender: Any) {
    }

需要在IBAction中处理代码,我可以在其中填写目标故事板和目标视图控制器。

1 个答案:

答案 0 :(得分:0)

您的问题是您输错了。你的代码:

let storyboard = UIStoryboard(name: storyboardName, bundle: nil);
        let controller = 
storyboard.instantiateViewController(withIdentifier: controllerName) as 
UIViewController; present(controller, animated: false, completion: nil)

当你必须将控制器转换为你所要控制的控制器的类时,你将控制器转换为UIViewController。

所以用您创建的ViewController名称替换UIViewController:

storyboard.instantiateViewController(withIdentifier: controllerName) as 
yourViewControllerClassHere