1

iOS6 iPhone アプリにバグが影響しています。

ストーリーボードを使用すると、「トップ」ビュー コントローラーがtabbarコントローラーになり、いくつかのタブはナビゲーション コントローラーで制御されます。

アプリが最初に読み込まれると、ナビゲーション コントローラーの 1 つの最上位にいます。右に移動することはできますが、左に「巻き戻す」と適切なスライド アニメーションが表示されません。代わりに、スライド アニメーションなしで表示されます。これは、そのナビゲーション コントローラーのすべてのアンワインド セグエに影響します。

別のタブを選択してもう一度戻ると、アニメーションの問題は自動的に修正されます。バックグラウンドからアプリを再開すると、正常に動作します。問題は、アプリの最初の起動時のみです。

これはなぜですか、またどのように解決されますか?

4

1 に答える 1

1

あなたの質問からわかることから、アンワインド セグエを使用して、ナビゲーション コントローラーに埋め込まれたコントローラーを逆戻りしようとしています。それがあなたのしていることなら、それは間違っています。これらのアンワインド セグエは削除する必要があります。これを行うためにセグエやコードを追加する必要はありません。ナビゲーション コントローラーがこれを自動的に処理します。

編集後:

プロジェクトを確認したところ、問題はカスタム タブ バー コントローラーにありました。viewDidAppear メソッドで [super viewDidAppearAnimated:animated] の呼び出しを省略したため、この奇妙な動作が発生しました。タブを切り替えた後に消える理由は、タブ バー コントローラーの viewDidAppear が再度呼び出されることはなく、アプリが最初に起動されたときだけであるためです。

于 2013-01-29T01:05:16.713 に答える