0

カスタムSwitchビューコントローラーを使用しています。異なるビューを切り替えるときに、「ビューがロードされました」関数または「ビューがロードを終了しました」関数が実行されることを期待しますが、実行されません。ここで私が使用しているもの:

- (IBAction)gotoKeyboardViews:(id)sender
{

YellowViewController *yellowController =
[[YellowViewController alloc]
 initWithNibName:@"YellowViewController"
 bundle:nil];

self.yellowViewController = yellowController;
[yellowController release];
[buttonKeyboard removeFromSuperview];

buttonStart = [UIButton buttonWithType:UIButtonTypeRoundedRect];
buttonStart.frame = CGRectMake(117,413, 103, 37);


[buttonStart setTitle:@"Restart" forState:UIControlStateNormal];
[buttonStart addTarget:self action:@selector(gotoBlueView:) 
         forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:buttonStart];
[blueViewController.view removeFromSuperview];
[self.view insertSubview:yellowViewController.view atIndex:0];  
}   

gotoKeyboardViewsは、ビューをBlueViewからYellowViewに切り替えることを想定しています...しかし、ナビゲーションバーの実装については少しずれていると思います。デザインの硬さが気に入らないので、ナビゲーションバーを使うように言わないでください。

4

2 に答える 2

1

viewWillAppearビューが再びアクティブになるとすぐに、メソッドが実行されます。多分それはあなたが探しているフックですか?

リファレンス:AppleUIViewControllerクラスリファレンス

于 2012-07-21T01:55:45.930 に答える
0

これらのメソッドは、nibファイルがロードされたとき、またはloadViewをオーバーライドした場合にのみ呼び出されます。新しいViewControllerがインスタンス化されない限り、これらは再度呼び出されません。

于 2012-07-21T01:37:40.840 に答える