2013-10-08 79 views

回答

1

可以肯定的是,PreferedStatusBarStyle()不是您調用的方法,而是您必須覆蓋的方法。

public partial class MyViewController : UIViewController 
{ 
    public override UIStatusBarStyle PreferredStatusBarStyle() 
    { 
     return UIStatusBarStyle.LightContent; 
    } 
} 

現在,這僅適用於頂層視圖控制器作品(或類似物,作爲一個VC在UINavigationController推動)。如果你想有一個子視圖控制器來驅動狀態欄,覆蓋ChildViewControllerForStatusBarStyle

public partial class TopLevelViewController : UIViewController 
{ 
    public override UIViewController ChildViewControllerForStatusBarStyle() 
    { 
     return myNestedViewController. 
    } 
} 

是詳盡的,如果BarStyle發生了變化,請務必讓這一事實通過調用SetNeedsStatusBarAppearanceUpdate()聞名。

希望它有幫助。

+0

,我已經試過這個代碼,但它沒有執行(調試器不會去那個點)。對於一些屏幕它顯示狀態欄textcolor白色,但對於一些屏幕它顯示顏色爲黑色。 –