storyboard - Storyboard Xcode 6 中的自适应转场是否已弃用?

标签 storyboard push ios8 xcode6

Xcode 6 界面生成器默认有新的复选框“使用大小类别”。它使 View 具有适应性。 enter image description here

当我尝试在 Storyboard中的两个 View 之间进行连接时,我有新的选择: enter image description here

代替旧的:

enter image description here

现在我们有“show”和“present modal”,而不是“push”和“modal”。旧选项被标记为已弃用。我选择了“show”选项,因为在segue设置中它称为“show(例如push)”

enter image description here

但它没有插入力。 Segue 动画看起来像从底部滑动(模式)并且导航栏消失。

问题是:如何使“显示”像推送一样工作?是否可以或者应该使用“push(已弃用)”来代替?在哪里可以找到有关新型 Segue 的信息?我在iOS8开发者库中找到的唯一东西是Storyboards Help You Design Your User Interface但没有关于“show”segue的信息。

更新

我尝试创建新项目,“show”确实像“push”一样工作。 我认为我的项目中的问题可能是因为我使用这样的代码重用了导航 Controller ,但我不知道如何修复它。

if ( [segue isKindOfClass: [SWRevealViewControllerSegue class]] ) {
    SWRevealViewControllerSegue *swSegue = (SWRevealViewControllerSegue*) segue;
    
    swSegue.performBlock = ^(SWRevealViewControllerSegue* rvc_segue, UIViewController* svc, UIViewController* dvc) {
        
        UINavigationController* navController = (UINavigationController*)self.revealViewController.frontViewController;
        [navController setViewControllers: @[dvc] animated: NO ];
        [self.revealViewController setFrontViewPosition: FrontViewPositionLeft animated: YES];
    };
    
}

之后我尝试在 MainViewController 之后推送 NewViewController enter image description here

更新 2:

我好像只有iOS 7、iOS 7.1问题。

最佳答案

是的,使用“显示”而不是“推送”

How can I make "show" work like push? Is it possible or should I use "push (depricated)" instead?

应该;对我来说确实如此。我正在使用 Xcode 6 beta 2,为了测试,我使用了单一 View 模板(在 IB 中调用预制 View Controller “VC_A”)。然后我添加了另一个 View Controller (‘VC_B’)。然后,我在 VC_A 上添加了一个按钮以显示 VC_B,并在 VC_B 上添加了另一个按钮以显示 VC_A。当我在 Storyboard中添加导航 Controller 作为初始 View Controller 并将 VC_A 设置为 rootViewController 时,“push”和“show”具有相同的效果。如果我没有初始导航 Controller 并且使用“show”,我会得到您所描述的内容,即 VC_B 从底部向上滑动。如果我尝试“推送”,我会崩溃,因为为了进行推送,我必须有导航 Controller 。因此,在提供导航 Controller 的情况下,“show”似乎会进行推送,如果不存在导航 Controller ,则会以模式转换样式进行呈现。

Where can I find any information about new types of segue?

所以我在“Interface Builder 的新增功能” session 中找到了一些信息 here 。如果您查看幻灯片,您会看到其中一张幻灯片 (41) 提到了这一更改。观看该 session 视频时,您可以跳至 38:00 分钟,他们开始谈论自适应转场。他们确实解释说,例如,“显示”自适应转场在决定如何呈现新 View Controller 时会考虑上下文。

关于storyboard - Storyboard Xcode 6 中的自适应转场是否已弃用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24184003/

相关文章:

ios - 如何在StoryBoard中为UISwitch设置“打开图像”和“关闭图像”?

ios - 在 Xcodes Storyboard 中单击按钮时加载 View

java - Parse.com 推送通知不起作用

Git:添加与推送与提交

swift - Swift 中的 UTTypeCreatePreferredIdentifierForTag 和 CFStringRef

iOS 10 Swift 和定义 UI 的最佳实践

ios - 是否可以对 Storyboard发表评论?

navigation - 后退按钮在 Sencha 触摸上不起作用

iOS 应用程序在 Debug模式下运行正常,但在正常模式下崩溃

objective-c - iOS 8 和 XCode 6 上的 AVFoundation 语音合成