1

私は iOS 開発に非常に慣れていないため、次のアプリを作成したいと考えています。

  • 最初の画面は 4 つのタブを持つタブ バー ビューです。
  • 3 つのタブは非常に単純ですが、4 番目のタブではタブ バー ビューから抜け出し、複数のビューが連続して表示されます。これは基本的に 10 画面にわたる演習であり (ナビゲーション バーがあるかどうかは気にしません)、最後にスコアを取得してメインのタブ バー ビューに戻ります。

次の要件がある場合、これにどのようにアプローチすることをお勧めしますか。

  • 演習の任意のページで、ユーザーはキャンセルしてメインのタブ バー ビューに戻ることができます (演習の途中または演習の最後に特定のページに戻るにはどうすればよいですか?)
  • 各ページにはいくつかのボタンやものがあるため、一連の画像ではありません - ユーザーがアクションを実行し、それを記録して最終画面で使用する必要があります (スコア用) - ページネーションでスクロール ビューを使用する必要がありますか? 私はそれについて読みましたが、それが私のニーズに合っているかどうかわかりません.
  • 10 個のビュー コントローラーをモーダルに表示し、それぞれに個別の UIViewController を用意する必要がありますか?

複数の質問があることは承知していますが、背景を説明したいと思います。全体的な戦略の 1 つの回答で、これらすべての質問に完全に答えることができると思います。

助けてくれてありがとう!

4

2 に答える 2

0

4 つ目のタブ内にナビゲーション コントローラーを配置し、それを使用して質問ビューをナビゲートします。

この演習の最初に戻りたいときはいつでも、[self.navigationController popToRootViewControllerAnimated:YES];inCancelメソッドを使用します。

ナビゲーションバーを表示したくない場合は、設定できます

self.navigationController.navigationBar.hidden = YES;
于 2012-08-06T00:07:10.730 に答える
0
UITabBarController *tabBarController=[[UITabBarController alloc]init];
 tabBarController.delegate=self;
    Screen1 *screen1=[[Screen1 alloc]init];
    UINavigationController *nav2=[[UINavigationController alloc]screen1];
 Screen2 *screen2=[[Screen2 alloc]init];
 UINavigationController * nav3=[[UINavigationController alloc]initWithRootViewController:screen2];
UIWindow *samplewindow = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
NSArray *controllers=[NSArray arrayWithObjects:nav2,nav3, nil];
        tabBarController.viewControllers=controllers;
     [self.window addSubview:tabBarController.view];
self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:[NSBundle mainBundle]];
 samplewindow.rootViewController = self.viewController;
    [samplewindow addSubview:self.viewController.view];
     [samplewindow makeKeyAndVisible];

このコードを AppDelegate.m に追加すると、正常に動作します。

于 2012-08-06T06:20:10.200 に答える