0
私は、顧客がタブバーをカスタマイズしたいと考えている大きなプロジェクトをしています。私はBCTabBarControllerを選択してUITabbarControllerを置き換えました。いくつかの修正後にそれが正常に動作しますが、テストの後、私は1つのバグが見つかりました:viewWillAppearがBCTabBarControllerで呼び出されない
ViewWillAppear, ViewDidAppear, ViewWillDisappear ViewDidDisappear methods not called in selectded view controller and not called into BCTabBarController.
This problem appears after BCTabBarController show modal controller from instance of BCTabBarController class.
私はbriancolinsのposted issue to github repoをしましたが、まだ何の答えを持っていません。ここで
私は現在、モーダルビューコントローラを呼び出すいくつかのコード:
- (void) presentProperlyModalViewController:(UIViewController *)modalViewController animated:(BOOL)animated
{
if ([[self controllerToPresentModalFrom] respondsToSelector:@selector(presentViewController:animated:completion:)]) // For iOS 5
{
[[self controllerToPresentModalFrom] presentViewController:modalViewController animated:animated completion:^(){}];
}
else
{
[[self controllerToPresentModalFrom] presentModalViewController:modalViewController animated:animated];
}
}
-(void) dismissProperlyModalViewControllerAnimated:(BOOL)animated
{
if ([self respondsToSelector:@selector(dismissViewControllerAnimated:completion:)]) {
[self dismissViewControllerAnimated:animated completion:^(){}];
}
else
{
[self dismissModalViewControllerAnimated:YES];
}
}
UPDATE:この問題ではありませんiOS5をで再現していますが示されているようにiOSの4.3
私は理解しました。これはBCTabBarControllerのバグです。 childViewController配列があります。それが提示された場合 - viewwillAppearは送信しません。 – Yanny
ありがとう!代わりにセレクタに応答しています – Yanny