Trying out iOS 7 did:
[[UINavigationBar appearance] setTranslucent:NO];
Got crash and error:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** Illegal property type, c for appearance setter, _installAppearanceSwizzleForSetter:'
*** First throw call stack:
(0x16ad9b8 0x142e8b6 0x16ad7ab 0x72163d 0x724c34 0x169daca 0x169d8de 0x6c09 0x228ea9 0x2296e9 0x22ab5e 0x240a6c 0x240fd9 0x22c7d5 0x35a4906 0x35a4411 0x16293e5 0x162911b 0x1653b30 0x165310d 0x1652f3b 0x22a2b1 0x22c4eb 0x6f3d 0x1d0d725)
libc++abi.dylib: terminating with uncaught exception of type NSException
Other calls work fine: eg.
[[UINavigationBar appearance] setBarStyle: UIBarStyleBlack];
When I set the translucency locally, it does not crash:
[self.navigationController.navigationBar setTranslucent:NO];
I'm assuming this is specific to iOS 7, but haven't tried out same thing in iOS 6 yet.
[[UINavigationBar appearance] setTranslucent:NO]
It is not available iOS 6.It is only available in iOS 7 onward.