2011年6月16日木曜日

UITabBarControllerのselectedIndex

UITabBarControllerのプロパティ、selectedIndexは
選択中のタブ番号(左から0~)返してくれるやつなんですが、
タブ切り替えでこのselectedIndexが変わるタイミングが若干ずれることに気づいた。

タブ0→タブ1に切り替えた際のタブ1の
ビューコントローラーで走るビューサイクルの例です。
※自分が乗ってるタブバーのインスタンス(tabBar)はどうにかして取得すること前提

-(void)viewWillAppear:(BOOL)animated{
     [super viewWillAppear:animated];
     NSLog(@"nowTabIndex:%d",tabBar.selectedIndex);//この時点ではtab0
}

-(void)viewDidAppear:(BOOL)animated{
     [super viewDidAppear:animated];
     NSLog(@"nowTabIndex:%d",tabBar.selectedIndex);//この時点ではtab1
}

…タブ切り替わった瞬間にindex変わろうよ!!

ところでタブバーに乗ってるビューコンからタブバーのインスタンスって
どうやって取得するんだ…?ナビコンみたいにセルフに問い合わせればたどり着けるの?
ぬーんタブバーあまり扱わないから未知数です…。