更改父视图控制器背景颜色

Posted

技术标签:

【中文标题】更改父视图控制器背景颜色【英文标题】:Changing the Parent View Controller's Background Color 【发布时间】:2012-03-16 19:24:15 【问题描述】:

我需要在翻转视图控制器中更改父视图控制器的背景颜色。我使用以下代码来执行此操作,它在 ios 4.3 模拟器中运行良好,但是,背景颜色在 iOS 5.1 模拟器中不会改变。在 iOS 5 中发生了什么变化?

-(IBAction)red 
    self.parentViewController.view.backgroundColor = [UIColor redColor];
    [self.delegate flipsideViewControllerDidFinish:self];

【问题讨论】:

检查parentViewController 属性是否未被弃用。因为在 iOS5 课程中听说过 view(或 cild mvc)对它的控制器一无所知 我不确定,但 Apple 在 iOS 5 中添加了 UIAppearance 可能会对您有所帮助:developer.apple.com/library/ios/#documentation/UIKit/Reference/… 【参考方案1】:

我认为您想在 iOS 5 中使用 self.presentingViewController。(请注意,此属性在 iOS 5 之前不可用)。

另一个选项,假设您的委托是呈现视图控制器,将通过委托方法更改背景颜色。

【讨论】:

以上是关于更改父视图控制器背景颜色的主要内容,如果未能解决你的问题,请参考以下文章

更改视图的背景颜色似乎很难?

如何在 iPhone 中更改 UIPickerView 的背景颜色

Swift 3 - 通过开关更改所有视图控制器的背景颜色(暗模式/夜间模式)

SwiftUI:如何使列表视图透明?如何更改列表视图背景颜色?

更改所有类的所有视图控制器的背景颜色(swift 4)

更改嵌入在标签栏视图控制器中的 ABPeoplePickerNavigationController 的色调和背景颜色