web-dev-qa-db-ja.com

ストーリーボードですべて定義されているUITabBarControllerのビューコントローラーの並べ替え

Storyboard内で、UITabBarControllerに接続されているビューコントローラーの順序を変更します。すべてのビューコントローラーを切断して、目的の順序で再接続する必要はありません。

私の質問:これは、ストーリーボードIB UIだけで実行できますか?

討論

viewControllersUITabBarControllerプロパティをフィードするビューコントローラーのリストでアイテムを上下に移動できるインスペクターパネルを探しています。

several view controllers linked to tab bar controller

タブがたくさんあるので、すべてを切断して再接続する必要はなく、順序を変更するだけです。

私はインスペクターでバーアイテムの「タグ」値を変更しようとしましたが、その値も実行時に無視されました(注文用ではなく、識別目的であると思います)。

Tag set on Bar Item

37
idStar

enter image description here

ストーリーボードでマウスを使ってドラッグアンドドロップして並べ替えることができます。 4.5.1でも機能します

[〜#〜]編集[〜#〜]

ドラッグする前に、まずストーリーボードビューを "ソースコード"に切り替えてから戻る必要があります。ストーリーボードファイルを右クリックして、[名前を付けて開く]-> [ソースコード]を選択し、[名前を付けて開く]-> [インターフェイスビルダー-iOSストーリーボード]に戻ります。これでうまくいくはずです。

[〜#〜]編集[〜#〜]

Xcode 4.5.2では動作しなくなりました!

[〜#〜]編集[〜#〜]

Xcode 5プレビュー5では再び機能します。 Appleは新しいバージョンでこのバグを修正したようです

enter image description here

93
rockstarberlin

ドラッグアンドドロップが機能しない場合は、別の回避策があります。ストーリーボードでは、UITabBarControllerからすべての関係を削除し、正しい順序で再接続しました。

16
brooNo

XCode 4.5.1

経験的な答えではありませんが、同じ問題がありました。

ストーリーボードをソースコードとして開き、

次に、ストーリーボードをInterface Builder-iOS Storyboardとして開きました

何も変わっていない...

次に、タブをドラッグアンドドロップします

9
JulianB

私はXcode 4.6.3でこの問題を抱えていましたが、タブを並べ替える方法を発見しました。これがすべての人に当てはまるかどうかはわかりませんが、ストーリーボードの左側のナビゲーションメニューで、TabBarControllerを展開すると、Tab Bar要素が表示されます。タブバーをクリックしたら、予想どおりにインターフェイスビルダーでタブアイコンをドラッグアンドドロップできます。

3
Chiubaka

同じ問題がありました。新しいビューコントローラーまたは新しいナビゲーションコントローラーをストーリーボードに配置した場合、タブバーコントローラーでドラッグアンドドロップが機能しませんでした。私はXcodeを閉じて再度開き、ドラッグアンドドロップは別のときにうまくいきました。

3
Ziggy

新しいビューコントローラーを追加した後、Xcode 4.6.2ではタブを並べ替えることもできません。ソースコードファイルの1つをクリックして、ストーリーボードファイルに戻るだけでうまくいくので、タブオーダーをもう一度編集できます。

1
Chris Livdahl

ソースコードビューに移動してシーンを見つけ、ソースを編集することで、並べ替えることができます。タブバーのセグエを見つけてコードを追加できます。 (プロジェクトナビゲーターでストーリーボードを右クリックし、[名前を付けて開く...ソースコード]を選択します)次に、ストーリーボードニブビューに戻ります(プロジェクトナビゲーターでストーリーボードを右クリックして、[名前を付けて開く...]を選択します)インターフェイスビルダー-IOSストーリーボード)

1
Paul Harker