When a UITabBarController tab is currently focused (selected) and user clicks on the already selected tab again, it pops all of that tab's ViewControllers back to root. WTF? I need to prevent this. I've tried subclassing UITabBarController and overriding the touchesBegan message to intercept these touches and not pass them on to the superclass, but that doesn't work. I never notice the touchesBegan is ever being called based on log messages. Any tips on how to extend UITabBarController to accomplish this? (Or some other mechanism to accomplish the same?) Thx for any tips.