如何在 iOS7 的 UIPopoverController 中更改导航栏背景/颜色?
Posted
技术标签:
【中文标题】如何在 iOS7 的 UIPopoverController 中更改导航栏背景/颜色?【英文标题】:How to change navigation bar background/color in UIPopoverController in iOS7? 【发布时间】:2013-11-05 02:46:51 【问题描述】:如题,在 ios7 中,如何在 UIPopoverController 中更改导航栏背景/颜色?
我用的是下面的方式,但是不行
UINavigationController * navController = [[UINavigationController alloc] initWithRootViewController:packListViewController];
[navController.navigationBar setBarTintColor:[UIColor blackColor]];
if (_packListPickerPopover == nil)
_packListPickerPopover = [[UIPopoverController alloc] initWithContentViewController:navController];
_packListPickerPopover.popoverContentSize = CGSizeMake(950, 345);
非常感谢
【问题讨论】:
重复:***.com/questions/8490261/… @Jatin,谢谢,我在这个帖子之前讨论了那个话题。而且我想知道是否有一些简单的方法可以做到这一点(在那个主题中,它太复杂了) @Jacky 实际上这个问题可能更密切相关:***.com/questions/19095195/… 和最佳答案对我有用 【参考方案1】:iOS 7 以后,您可以使用UIPopoverController
的backgroundColor
属性。
@property (nonatomic, copy) UIColor *backgroundColor NS_AVAILABLE_IOS(7_0);
用法示例:
if ([self.popoverVC respondsToSelector:@selector(setBackgroundColor:)]) // Check to avoid app crash prior to iOS 7
self.popoverVC.backgroundColor = [UIColor greenColor];
注意 - 截至目前 (iOS 7.0.3),在某些情况下(例如使用 colorWithPatternImage 设置颜色:),模拟器不支持颜色,但 在设备上可以使用很好。
【讨论】:
以上是关于如何在 iOS7 的 UIPopoverController 中更改导航栏背景/颜色?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iOS7 中更改 UISearchBar 的背景颜色
如何在 iOS7 的 UIPopoverController 中更改导航栏背景/颜色?
如何调整 UIViewControllerWrapperView 的方向(在 IOS7 中)?