2011-05-04 58 views
1

當通過iPhone Simulator/Xcode運行我的應用程序時,選項卡欄顏色爲黑色。但是,當我將應用程序移動到iPhone上進行測試時,標籤欄變爲白色。我通過Google/Stack Overflow找到了一個具有相似體驗的人,但我找不到任何答案。從Xcode導出到iPhone時,黑色選項卡欄變爲白色

有什麼建議嗎?

編輯 - 我的標籤欄圖標有一個清晰的背景。正如我之前提到的那樣,模擬器中的顏色是黑色的,但在手機上是白色的。我需要在我的圖標背景中進行着色嗎?

編輯2 - 我其實進入界面生成器,發現tabbar的默認顏色是白色的。我仍然不知道爲什麼它在模擬器中顯示爲黑色,但感謝您的幫助!

回答

2

在iPhone模擬器中運行時,您只是「模擬」設備狀態欄的樣式。可以在Xcode 4的Interface Builder部分或與Xcode3捆綁的Interface Builder.app中找到模擬的設置 - 選擇UIViewController後,查找Attributes檢查器的「Simulated Metrics」部分。

由於Interface Builder中的設置僅模擬狀態欄樣式,因此需要在應用程序代碼中明確設置它。這與UIApplication類的setStatusBarStyle:animated:方法來完成:

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackOpaque 
              animated:NO]; 

更多信息,請參見UIApplication Class Reference頁。

+2

**白色選項卡**和**灰色狀態欄**之間存在巨大的巨大差異。 – 2011-05-04 06:50:12

+0

真的,Radek。 anc1revv,你是在問一個通常出現在屏幕底部的標籤欄的顏色)還是設備的狀態欄(頂部的窄位)? – 2011-05-04 06:56:52

+1

首先他談論了tabbar而不是狀態欄,那麼如果必須再次在代碼中設置IB中設計的UI元素樣式,因爲它們只是在模擬器中「模擬」 - 嘿,這將使整個XCode設計過程包括。 IB非常無用 - 通過矛盾證明:-)。我所有的狀態欄都在設備上看起來與在IB和模擬器中看到的方式完全相同。 – 2011-05-04 07:16:01

相關問題