Objective-Cではまだかなりグリーンな感じがします-私の最初の「本物の」プロジェクトを構築し、早い段階でアーキテクチャの障害にぶつかりました。
ビューとナビゲーションを完全に「カスタム」環境で表示したいと思います。たとえば、組み込みのUIコントロール(UINavigationControllerやUITabBarなど)をすべて非表示にします。1つの特定の例(タイトルのように):「メイン」ビューからUIImagePickerControllerに直接移動し、次にUIImagePickerControllerから新しい3番目のビューに移動します。
これが私が使っている3つの主要なビューコントローラーです:
- MainViewController(UIViewControllerのカスタムサブクラス。メインのNavが含まれ、通常はプライマリまたは「親」コントローラーです)
- ImageEditViewController(保存された画像の上にいくつかのコントロールをオーバーレイするUIViewControllerのカスタムサブクラス)
- UIImagePickerController(組み込みのAppleクラス)
これについてイメージできるアプローチがいくつかあります(ただし、どちらかを実行する方法がわかりません)。
- UINavigationControllerまたはUITabBar実装を使用しますが、どういうわけかシステムUIコントロールを非表示にして、独自の実装を行います。システムUIコントロールを非表示にする方法がわからないため、このアプローチはブロックされています。
- コード内の特定のポイントで、コントローラーからコントローラーまたはビューからビューへの遷移を手動で呼び出します。私はこの方法を好むのですが、コントローラー間のインスタンス化、管理、および移行に最適な「アプローチ」を見つけることができません。わからないことの例:メインのビューコントローラーから2番目のビューコントローラーを呼び出すにはどうすればよいですか?2番目から直接3番目のViewControllerを呼び出すにはどうすればよいですか?(または、少なくとも3番目に直接移行してください!)
ここには簡単な解決策があると思います。Appleのヘルパークラス以外でのビューとビューコントローラの管理については、まだ学んでいないことです。