3

私はiOS開発にかなり慣れていないので、添付のスクリーンショットのようなものを作りたいと思っています。

ここに画像の説明を入力

ネストされた UINavigationControllers は、不可能ではないにしても、良い考えではないことを読んだので、私が望むものを実装する方法についてのアイデアを喜んで受け入れます。

私の2番目の画面には、静的なヘッダーとフッターを維持しながら、2つのビューを切り替えたい(ジェスチャを使用せず、アニメーションをプッシュする)があります。

プッシュ セグエを行う方法を知っている唯一の方法は、UINavigationController を使用することです。

これを実装するにはどうすればよいですか?2 番目の UIViewController では、プログラムで UINavigationController を作成し、それを self.view に追加できると考えていましたが、最終的には次のようにしました。

self.subNavigationController = [UINavigationController alloc] initWithRootViewController:[someVC alloc] init]];
[self.view addSubview: self.subNavigationController.view]

しかし、それはself.subNavigationController自体ではなく、self.subNavigationControllerのビューをself.viewに追加するだけです。

私が言ったように、私はそれをどのように処理すべきかについて簡単にベースから外れている可能性があります.どんなアドバイスでも大歓迎です.

4

1 に答える 1

3

わかりました。これが正しければ、必要なのは、(他のアプリと同様に) さまざまなビュー間を移動できるアプリです。

これはUINavigationController(これを "nav1" と呼びましょう) を使用し、これで問題ありません。

ただし、静的なナビゲーション バーを持つビューも必要です。つまり、nav1 に関する限り、これはアプリのナビゲーションの一部にすぎません。また、そこには 2 つの潜在的なビューが必要です。(マップとテーブル ビュー) 下部にも静的バーが表示されます (IB では、これはツールバーだと思います)。これを「mapAndTableViewController」と呼びましょう。

これがどのように機能するかは正確には述べていませんが、それらの間でスワイプジェスチャは必要ありません。それで、それらの間で交換するボタンか何かがあると思いますか?

このようなもの...

http://www.youtube.com/watch?v=eg6vWGH67zk&feature=youtube_gdata_player

私がこれを行った方法は、スクロール ビューで単一のビュー コントローラーを使用することです。スクロールビューで、スクロールを無効に設定し、ページングを有効に設定します。これは奇妙に聞こえますが、コード アクセスを許可しながら、スクロール ビューからタッチ スクロールを削除します。

ここでmapAndTableViewController、スクロール ビューの左側と右側にデータを入力します。

ここで行うことは、2 つのビュー コントローラーを取得して、それらmapViewControlleryourTableViewControllerインスタンス化することです。次に、これらのコントローラーのビューをスクロールビューの左右に追加します。

基本的に、3 つのビュー コントローラーがあります。1 つはスクロール ビュー用、もう 1 つはマップ ビュー用、もう 1 つはテーブル ビュー用です。

あなたからのさらなる説明がなければ、あなたが達成しようとしていることを完全には理解していないため、これ以上のことはできません.

お役に立てれば...

于 2013-07-04T21:28:46.613 に答える