TwitterforiPhoneのナビゲーションスタイルがどのように実装されているかを理解しようとしています。
タイムラインでツイートをタップすると、タイムラインから詳細ビューへの移行中、(カスタム)タブバーは所定の位置に留まります。これは、タブバーが「メイン」のサブビューであることを示しています。このサブビューには、タブごとに1つずつUIViewController
、4つの配列が含まれていUINavigationControllers
ます。タブが押されると、メインUIViewController
は現在表示されているものをビューから削除しUINavigationController
、新しいタブをサブビューとして追加します。このアプローチでは、タブバーはナビゲーションスタックの一部ではないため、各遷移中に所定の位置に留まります。
ただし、詳細ビューでURLをタップすると、タブバーが画面外に移動し、新しいツールバーが表示されます。これは、上記の理論と矛盾します。
Tweetbotは、公式Twitterアプリとは正反対のナビゲーションスタイルを使用しています。Tweetbotのタイムラインでツイートをタップすると、タブバーが画面外に移動します。移行中、タブバーが所定の位置に留まることはありません。彼らはおそらく1つUINavigationController
を使用し、メインUIViewController
+タブバーをrootviewcontrollerとして使用します。ユーザーがツイートをタップすると、タイムラインが委任などを介し[self.navigationController pushViewController:]
てメインを呼び出すと思います。UIViewController
実際、Twitter for iPhoneは、最初の理論とTweetbotのナビゲーションスタイルの背後にある理論を組み合わせています。公式Twitterアプリの機能をどのように実現できますか?