Vis*_*hal 3 ios uistoryboard swift swift2
我在选项卡栏控制器中有 2 个导航控制器,它们指向相同的视图。这在两个不同的选项卡中为我提供了该视图的 2 个不同实例。现在我希望视图根据其父导航控制器有不同的行为。
if id == "parent1"{
//do something
} else {
//do something else
}
Run Code Online (Sandbox Code Playgroud)
那么如何获取navigationControllerinViewController代码的标识符呢?
您可以使用restorationIdentifier在情节提要中设置的内容;它位于身份检查器中故事板标识符字段的正下方。
从视图控制器的属性获取当前导航控制器
let id = self.navigationController.restorationIdentifier
Run Code Online (Sandbox Code Playgroud)
请注意,通过设置此属性,您将告诉系统应保存视图控制器以供恢复,这可能会产生意想不到的后果。请参阅文档。
或者,您可能需要考虑在视图控制器类上使用子类或某种属性(例如,可能使用IBInspectable等)。