多くの人がすでに報告している問題があり、didSelectViewController
呼び出されませんが、私の場合は時々呼び出されます。3 つのタブと 3 つのビュー コントローラーがあります。ユーザーが 2 番目または 3 番目のタブを押すたびに、何らかのコードを実行する必要があります。私の SecondViewController と ThirdViewController には次のものがあります。
UITabBarController *tabBarController = (UITabBarController *)[UIApplication sharedApplication].keyWindow.rootViewController;
[tabBarController setDelegate:self];
これで、SecondViewController ですべてが正常に動作しdidSelectViewController
、2 番目のタブが押されるたびに呼び出されます。また、ThirdViewController ではdidSelectViewController
、3 番目のタブが押されるたびに呼び出されますが、その間に 2 番目のバーが押されていない場合にのみ呼び出されます。したがって、FirstViewController と ThirdViewController の間を行ったり来たりすると、すべて問題ありません。しかし、first->second-> third のようなパターンにdidSelectViewController
入ると、ThirdViewController で呼び出されません。また、first-> third-> second-> third のように行くdidSelectViewController
と、ThirdViewController で初めて呼び出されますが、2 回目は呼び出されません。何か案は?