I have a tab bar in my app, and the tab bar items are subclasses of UITabBarItem. After fetching an update from the server, these tab bar items set their title from code using this line:
[self setTitle:@"SomeText"];
Once this line runs, the tab bar items that were previously hidden (behind the more tab) become visible in the main tabs area, and stack on top of the other tabs. See the screenshot below. This only happens in iOS 10 (beta). Is this a bug in my code or an issue in iOS 10?
I have created a minimal XCode project and posted to Github to demonstrate the issue: https://github.com/RippleAdder/TabStacks
This happens anytime you programmatically set a tab's Title in iOS 10. I have confirmed that this is a bug in iOS 10 beta. I have opened a bug report and radar: openradar.appspot.com/27749026
I have also posted a Github repo that demonstrates the issue: https://github.com/RippleAdder/TabStacks
This answer will not solve your particular case but could help others with the same problem.
The problem seems to appear if you're using the UIViewControllers tabBarItem property to set the title. Using the UITabBarController tabBar property instead should resolve the problem.
So instead of (e.g.):
tabBarController.viewControllers[0].tabBarItem.title = @"SomeText";
use:
tabBarController.tabBar.items[0].title = @"SomeText";
Update
We found out that replacing the UITabBarItem is another workaround to this iOS 10 bug:
UITabBarItem *item = tabBarController.viewControllers[0].tabBarItem;
tabBarController.viewControllers[0].tabBarItem = [[UITabBarItem alloc] initWithTitle:@"SomeText" image:item.image tag:item.tag];
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With