【问题标题】:Get main storyboard in universal app在通用应用程序中获取主故事板
【发布时间】:2013-04-03 21:30:01
【问题描述】:

尝试一个通用项目,我想通过故事板中的标识符加载一个 vc。有没有办法在访问情节提要时避免显式检查习语。

这个丑陋的代码有效....

UIStoryboard *storyboard;

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
    storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil];
}
else {
    storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
}

UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"MyViewController"];

但是很糟糕。字符串文字主情节提要很难看(不知道为什么项目不能保存主情节提要设置,以便应用可以说 [UIStoryboard mainStoryboard];),但显式的成语检查太远了。

是否有任何隐藏的智能(类似于支持视网膜显示器的“@2x”图像后缀)可以清除此代码?

【问题讨论】:

    标签: iphone ios ipad storyboard ios-universal-app


    【解决方案1】:

    假设您从另一个视图控制器中执行发布的代码,您始终可以通过[self storyboard] 获取当前情节提要,其中 self 是 UIViewController 的任何实例。

    【讨论】:

    • 谢谢。一石两鸟。希望我能投票两次。
    猜你喜欢
    • 2014-09-07
    • 2013-06-11
    • 1970-01-01
    • 1970-01-01
    • 2012-05-03
    • 2012-02-08
    • 1970-01-01
    • 2016-09-22
    • 2012-01-18
    相关资源
    最近更新 更多