How to check if a view controller can perform a segue

前端 未结 8 2003
长发绾君心
长发绾君心 2020-12-29 02:10

This might be a very simple question but didn\'t yield any results when searching for it so here it is...

I am trying to work out a way to check if a certain view co

8条回答
  •  误落风尘
    2020-12-29 02:51

    Reference CanPerformSegue.swift

    import UIKit
    
    extension UIViewController{
        func canPerformSegue(identifier: String) -> Bool {
            guard let identifiers = value(forKey: "storyboardSegueTemplates") as? [NSObject] else {
                return false
            }
            let canPerform = identifiers.contains { (object) -> Bool in
                if let id = object.value(forKey: "_identifier") as? String {
                    return id == identifier
                }else{
                    return false
                }
            }
            return canPerform
        }
    }
    

提交回复
热议问题