0

ナビゲーションベースのアプリを作成しています(ナビゲーションコントローラーに埋め込まれたビューはほとんどありません)。たとえば、前のビュー(ビューA)のビューBの内側からtitleプロパティを取得して、NSLogアウトできるかどうか疑問に思っています。

ありがとう

ルカ

4

4 に答える 4

0

はい、できます。

UINavigationControllerのviewControllersプロパティを見てください。

これにより、ユーザーが現在見ているビューコントローラーの背後にあるビューコントローラーの配列が返されます。したがって、最後のView Controller(または、リンクしたAppleのドキュメントによると「n-2、nは配列内のアイテムの数」)を見ると、そのViewControllerのナビゲーションバーからタイトルを取得できます。

于 2012-04-19T06:49:19.307 に答える
0

クラスA.mファイル

{
   NSString *titleA = @"Khalid"; 
   ClassB *bObj = [[ClassB alloc] init];
   bObj.title = titleA;
   [self.navigationController pushViewController:bObj animated:YES];
}
于 2012-04-19T07:05:06.530 に答える
0
NSMutableArray *activeControllerArray = [self.navigationController.viewControllers mutableCopy];

ControllerA myController;
For(int i = 0, i <[activeControllerArray  count], i++) {
    if([[activeViewController objectAtIndex:i] isKindOfClass:[ControllerA class]) {
        myController = [activeViewController objectAtIndex:i];
        NSLog(@"%@",myController.title);
     }
}
于 2012-04-19T06:50:20.230 に答える
0

ViewControllerA *viewA = (ViewControllerA *)[self.navigationController.viewControllers objectAtIndex:self.navigationController.viewControllers.count-2];

NSLog(@"%@",viewA.title);

于 2012-04-19T07:04:23.220 に答える