更改 UIActivityViewController 的 navigationBar 的颜色

Posted

技术标签:

【中文标题】更改 UIActivityViewController 的 navigationBar 的颜色【英文标题】:Change Color of navigationBar of just UIActivityViewController 【发布时间】:2014-02-13 20:49:32 【问题描述】:

如何只改变 UIActivityViewController 的颜色?

我想改变 UIActivityViewController 的 UINavigationBar 的颜色,使用类似:

self.activityViewController.navigationController.navigationBar.barTintColor = [UIColor greenColor];

【问题讨论】:

Glitch with UIActivityViewController的可能重复 【参考方案1】:

我建议在创建和展示您的UIActivityViewController 之前更改UINavigationBar 的背景颜色:

 [UINavigationBar appearance].backgroundColor = [UIColor greenColor];

HTH

【讨论】:

当将它插入到显示 ActivityView 的按钮单击方法中时,这似乎对我不起作用:我将它插入到我的 [self presentViewController:activityViewController animated:YES completion:nil] 上方;甚至尝试过:[self presentViewController:activityViewController animated:YES completion:^[self presentViewController:activityViewController animated:YES completion:nil];]; 对不起,我提到了错误的属性。请尝试设置这样的颜色:[UINavigationBar appearance].barTintColor = [UIColor greenColor]; 这与我使用的效果相同。不幸的是,它也改变了任何 childViewController tintColor,我正在避免。 尝试在上面的语句之后另外设置导航栏的色调。【参考方案2】:

以下代码可能对您有所帮助:

[[UINavigationBar appearanceWhenContainedIn:[UIActivityViewController class], nil]
           setTintColor:[UIColor greenColor]];

【讨论】:

我认为这段代码行不通,因为UINavigationBar 不是UIActivityViewController 的子类。 UIActivityViewController 将嵌入到 UINavigationController 中。

以上是关于更改 UIActivityViewController 的 navigationBar 的颜色的主要内容,如果未能解决你的问题,请参考以下文章

HAC 集群更改 IP(单节点更改全部节点更改)

更改fancybox iframe的大小-我可以更改宽度但不能更改高度?

在运行时更改方向更改 ViewControllers

UIScrollView 更改 contentOffset 时更改框架

HAC集群更改IP(单节点更改全部节点更改)

HAC集群更改IP(单节点更改全部节点更改)