This seems to be happening with any bar (TabBar or ToolBar) that is translucent.
Thus, one way to fix this is to set _tabBar.translucent = NO; (in my case). This prevents unwanted shadow under the top navigation bar, leaving a translucent navigation bar. Unfortunately, the bottom panel is no longer translucent.
It can be returned to translucent, but all this should happen after the completion of the entire animation of pressing, so this property is clearly visible.
In the case, however, the bottom panel should also be translucent, and I do not want the user to see the change that I allowed using the following:
[UIView animateWithDuration:0.1 animations:^{ _tabBar.barTintColor = [UIColor colorWithWhite:0.97254901960784 alpha:1.0];
Then in viewDidAppear: I just return back:
[UIView animateWithDuration:0.1 animations:^{ _tabBar.barTintColor = nil; _tabBar.translucent = YES; }];
There is only a slight change in appearance, but it is barely noticeable, and it is better than having a shadow under the navigation bar.
I hope this helps others make the bars transparent until Apple fixes this behavior, as in some cases ARE bars should be hidden, unlike what was suggested in other posts, especially for UITabBar
kacho Aug 27 '14 at 7:02 2014-08-27 07:02
source share