UITabBarControllerを継承したクラスを作って-viewDidAppear:
をoverrideして、その中で下記のコードを呼ぶだけ。
if([[UIDevice currentDevice] isOS7]){ static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ self.selectedIndex = 2; self.selectedIndex = 0; }); }
dispatch_onceを使って、起動時に1回だけselectedIndexの切り替えをします。
[[UIDevice currentDevice] isOS7]
はUIDeviceのCategoryで追加したメソッドなので、OSのバージョンを確認する処理を別で実装して下さい。
iOS7以前で実行されても別に問題は無いと思うので、if文覗いても大丈夫だと思います。
OSのバグっぽい気がするので修正されるまで放置してもいいと思う。