I am setting global styles in iOS 5 with UIAppearance. Here’s an example:
[[UIbarButtonItem appearance]
setTtitletextAttributes:someStyle
forState:UIControlStateNormal
];
It looks good in most cases:

But there are cases where the global style looks ugly, like in a movie player.

For the movie player, I would prefer to have the default blue button. So how would I target only the back button’s appearance and not the done button’s appearance? I have similar issues with targeting normal table cells and grouped table cells.
You can actually change the proxy to just target certain view hierarchies. In other words, when the view you want to customize is contained in a certain view, you can modify its appearance differently from the rest. So set your global (white) style first, but then call the following method to customize the appearance for when the button appears in an
MPMoviePlayerControlleror whatever else.Let me know if that helps!