[Xcode 6] セグエの名前が新しくなりました

2014.09.18

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Push セグエや Modal セグエは Deprecated になりました

Xcode 6 の Storyboard ではセグエが一新され、これまでよく使っていた Push セグエ、 Modal セグエ、 Popover セグエ、Replace セグエは Deprecated になりました。

segue01

新しいセグエになったのか!?と思いきや、名前が変わっただけです(多分)。確認していきましょう。

Show セグエ

Show セグエは Xcode 5 までの Push セグエに相当します。現在表示されている View Controller の一階層奥に押し出す形で画面遷移します。新しい View Controller は右から左にスライドするアニメーションで表示されます。リスト画面から詳細画面に遷移するときなどに使います。

Show Detail セグエ

Show Detail セグエは Xcode 5 までの Replace セグエに相当します。現在表示されている View Controller を新しい View Controller に置き換える形で画面遷移します。主に iPad 用のアプリで使用され、例えば左半分がリスト、右半分が詳細となっているような画面において、詳細の View Controller を次々に置き換えて表示したいときなどに使います。iOS 8 から UISplitViewController が iPhone でも利用できるようになったので、これからは iPhone アプリ開発でも利用する機会があると思います。

Present Modally セグエ

Present Modally セグエは Xcode 5 までの Modal セグエに相当します。現在表示されている View Controller の上に積み重なる形で画面遷移します。現在表示されている View Controller から画面を切り替えたいときなどに使います。

Present As Popover セグエ

Present As Popover セグエは Xcode 5 までの Popover セグエに相当します。現在表示されている View Controller を表示しつつ、新しい View Controller をポップオーバーするような形で表示します。iPad 用のセグエです。

まとめ

今回の変更された理由は、きっとセグエの名前を見ただけで直感的に理解できるようにしたかったのではないかと思います。実際のところ、Xcode 5 までは名前を見ただけではどのセグエをどういう用途で使えば良いか分かりづらかったですよね。私見ですが。OS X Yosemite 向けのアプリ開発でも Storyboard が使えるようになったこともあり、初めて Storyboard に触れる開発者が増えたことを懸念して整備しなおした、といったところでしょうか。

ということで、セグエの名称の変更はこれから開発を始める人には優しくなったのではないかな?と思います。私見ですが。