0

まず、タイトルについて申し訳ありません。実際、このシナリオに適切なタイトルを付ける方法がわかりません。

ログイン ビューがあります。認証が成功すると、次のビューは 4 つのタブを持つタブ バー ビューです。次のように作成しました。

UIViewController *firstTab = [[SAHomeView_iPad alloc]initWithNibName:@"SAHomeview_iPad" bundle:nil];
         firstTab.tabBarItem.image = [UIImage imageNamed:@"Home.png"];
         UIViewController *secondTab = [[SAMenuView_iPad alloc]initWithNibName:@"SAMenuView_iPad" bundle:nil];
         secondTab.tabBarItem.image = [UIImage imageNamed:@"Menu.png"];
         UIViewController *thirdTab = [[SAGraphView_iPad alloc]initWithNibName:@"SAGraphView_iPad" bundle:nil];
         thirdTab.tabBarItem.image = [UIImage imageNamed:@"Graph.png"];
         UIViewController *fourthTab = [[SAAboutView_iPad alloc]initWithNibName:@"SAAboutView_iPad" bundle:nil];
         fourthTab.tabBarItem.image = [UIImage imageNamed:@"info.png"];
         UITabBarController *tabBarController = [[UITabBarController alloc] init];
         tabBarController.viewControllers = [NSArray arrayWithObjects:firstTab, secondTab,thirdTab,fourthTab, nil];
         SAAppDelegate *delegate = [UIApplication sharedApplication].delegate;
         delegate.window.rootViewController = tabBarController;

3 番目のタブにカレンダー ボタンを追加しました。これを押すとカレンダー ビューが表示されます。このカレンダー ビューを 3 番目のタブのサブビューとして追加しました。

ユーザーがログインすると、ホームタブにカレンダーボタンが表示されます。ユーザーがカレンダー ボタンをタップすると、カレンダー ビューに移動する必要があります。このカレンダー ビューは、実際には 3 番目のタブにサブビューとして追加されます。

誰でもこのシナリオを解決するのを手伝ってくれますか? よろしくお願いします。ログイン

ログイン成功後の表示 カレンダー ビュー (3 番目のタブにサブビューとして追加されます)

4

2 に答える 2

0

友達、ついに私はこのようにやりました.すべてのあなたの助けに感謝します.これがあなたにも役立つことを願っています.:)

- (IBAction)moveToCalendar:(id)sender {
    self.tabBarController.delegate = self;
    self.tabBarController.selectedIndex = 2;
    [(SAGraphView_iPad *)self.tabBarController.selectedViewController calendar:self];
}
于 2013-01-17T10:29:10.547 に答える
0

カレンダー ビューを thirdTab ビュー階層から取り出して独自のカスタム viewController に割り当てることをお勧めします。これにより、アプリ内の他の viewController と同じステータスで表示できるようになります。

その後、モーダル ストーリーボード セグエを使用するか、次のコードを使用してカレンダーを呼び出すことができます。

[self presentViewController:calendarViewController animation:YES completion:NIL];

そしてそれを却下します:

[self.presentingViewController dismissModalViewControllerAnimated:YES];

それを提示すると、それを提示したビューに戻ることが期待されるため、タブ コントローラーのコンテキストが失われます。それを閉じると、タブ バー コンテキストを含む表示ビューが返されます。

于 2013-01-17T05:25:24.857 に答える