実行時に Navbar の色合いを変更しようとしていますが、ナビゲーション バーの色合いを変更することはできますが、左右のボタン (iOS 7 ではシステム ブルー) が変更されたため、それらを強制しようとしています。システムの青色に戻ります。これは私が使用しているコードで、viewDidLoad から呼び出されます: NSForgroundColorAttributeName と UITextAttributeTextColor の両方を試しましたが、ナビゲーション バーの色に応じて白または黒のテキストが表示され続けます。
ボタンに青いテキストを表示するにはどうすればよいですか?
NSDictionary *btnAttr = [NSDictionary dictionaryWithObjectsAndKeys:
[UIFont boldSystemFontOfSize:14], UITextAttributeFont,
[UIColor blueColor], NSForegroundColorAttributeName,
nil];
for(UIView *v in [theView.view allSubViews])
{
if([v isKindOfClass:[UINavigationItem class]])
{
UINavigationItem *btn = (UINavigationItem *)v;
[btn.leftBarButtonItem setTitleTextAttributes:btnAttr forState:UIControlStateNormal];
[btn.rightBarButtonItem setTitleTextAttributes:btnAttr forState:UIControlStateNormal];
}
}