我想让我的整个ViewController变成灰色,除了我想让它显示CARRIER和当前时间的顶部区域保持白色。唯一的方法是粘贴一个覆盖除该区域以外的所有区域的视图,并将其设置为灰色,还是有某种方法可以将整个背景设置为灰色并仅将其中一条设置为白色
"带时钟的顶部区域"称为状态栏。该栏是透明的,显示为窗口中的最顶部视图。这意味着没有什么可以覆盖状态栏。
您可以通过向[UIApplication sharedApplication]
对象发送适当的消息来显示、隐藏和更改状态栏的外观(将内容从浅色更改为深色意味着状态栏中的文本颜色将为白色或黑色)。
现在你对状态栏有了一点了解,我可以回答你的问题:
为了使状态栏下的背景与屏幕其他部分的背景不同,您需要添加一个具有[[UIApplication sharedApplication] statusBarFrame]
框架的视图。然后,您可以将视图控制器的视图属性的颜色与状态栏下的视图的颜色不同。
将ViewController视图的背景色设置为灰色。然后添加一个与状态栏的框架相匹配的白色子视图。