我想为多个场景使用相同的ViewController。现在我想根据使用的场景实现稍微不同的行为。我想这可能是使用标识符。喜欢(伪代码)
if (self.identifier == scene1)
{
// do this
}
else if (self.identifier == scene2)
{
// do that
}
如何从ViewController中调用标识符?
编辑:
我的意思是来自Inpector的这个标识符 - 如何在代码中调用它?
提前致谢。
答案 0 :(得分:2)
我修好了。一种可能的方法是命名Segway标识符,然后在prepareForSegue方法中检查相等的字符串。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"HelpSegue"])
{
// do this
}
else
{
// do that
}
}
答案 1 :(得分:0)
我认为这里的正确设计是使用枚举值,例如:
typedef enum{
kViewControllerStyle1,
kViewControllerStyle2,
kViewControllerStyle3
} ViewControllerStyle;
通过界面构建器插座连接所有需要适应此样式的视图元素,并在“viewDidLoad”方法中添加一个switch-case以进行正确调整,依赖于当前视图控制器样式(还添加“ ViewControllerStyle“视图控制器类的属性”。