对于某些屏幕,状态栏文本颜色为白色,但对于某些屏幕,它是黑色的,那么如何为ios7将其更改为白色。
我使用了PreferedStatusBarStyle()
方法,但它没有执行。
答案 0 :(得分:1)
可以肯定的是,PreferedStatusBarStyle()
不是您调用的方法,而是您必须覆盖的方法。
public partial class MyViewController : UIViewController
{
public override UIStatusBarStyle PreferredStatusBarStyle ()
{
return UIStatusBarStyle.LightContent;
}
}
现在,这仅适用于顶级视图控制器(或类似,作为在UINavigationController
中推送的VC)。如果您希望子视图控制器驱动状态栏,请覆盖ChildViewControllerForStatusBarStyle
public partial class TopLevelViewController : UIViewController
{
public override UIViewController ChildViewControllerForStatusBarStyle ()
{
return myNestedViewController.
}
}
要详尽无遗,如果BarStyle已更改,请确保通过调用SetNeedsStatusBarAppearanceUpdate ()
来了解该事实。
希望它有所帮助。