UINavigationBar
顯示iPhone 4上的2個背景圖像。一個位於中間。但其中一個是Bigger,位於UINavigationBar
的右側。我在iPhone 5上測試過,並沒有發生。任何建議請。UINavigation bar顯示2個重疊背景iPhone 4中的圖像
請參閱
http://s27.postimg.org/5jvzqp04z/header.png
我很抱歉我像沒有足夠的聲譽張貼在這裏的形象。
UINavigationBar
顯示iPhone 4上的2個背景圖像。一個位於中間。但其中一個是Bigger,位於UINavigationBar
的右側。我在iPhone 5上測試過,並沒有發生。任何建議請。UINavigation bar顯示2個重疊背景iPhone 4中的圖像
請參閱
http://s27.postimg.org/5jvzqp04z/header.png
我很抱歉我像沒有足夠的聲譽張貼在這裏的形象。
嘗試這種情況:
navigationBar.translucent = NO,則它是YES默認在iOS7。
請閱讀本UINavigationBar的文檔:
iOS上的新行爲7.默認值是YES。您可以通過將屬性設置爲NO來強制背景不透明。如果導航欄有一個自定義背景圖像,則默認值是從圖像的alpha值推斷的 - 如果它具有帶alpha的任何像素,則爲YES < 1.0如果將setTranslucent:YES發送到具有不透明自定義背景圖像的條形圖,它將應用圖像的系統不透明度小於1.0。如果將setTranslucent:NO發送到具有半透明自定義背景圖像的條形圖,則它將使用條形圖的barTintColor(如果已定義)爲圖像提供不透明背景,如果barTintColor爲零,則會爲UIBarStyleBlack提供黑色或對於UIBarStyleDefault爲白色。
如果您在具有較舊iOS版本的設備/模擬器中運行項目,則設置'navigationBar.translucent'值會導致異常。
添加一個版本檢查這樣的:
float systemVersion = [[[UIDevice currentDevice] systemVersion] floatValue];
if (systemVersion >= 7.0)
{
navigationBar.translucent = NO;
}
另一種選擇是設置這樣的:
vc.edgesForExtendedLayout = UIRectEdgeNone;
希望這會幫助你。歡呼:)
感謝您的意見,並抱歉遲到的答覆。我試過你的代碼。但似乎沒有改變。該問題發生在iPhone 4和iPad上,但不在iPhone 5上。我會添加我的問題的形象。希望看到更多的建議。 – pmp
是的確定添加圖像,它將使我們徹底瞭解您的情況。 – Irfan
請檢查下面的鏈接可能它會幫助你:http://stackoverflow.com/questions/13814654/custom-uinavigationbar-works-on-simulator-but-not-on-released-version http://stackoverflow.com/questions/11886644/custom-styling-of-uinavigationbar-not-working-properly http://stackoverflow.com/questions/18990283/ios-7-navbar-colours-not-showing-properly-on-iphone-4 http ://stackoverflow.com/questions/6851984/semitransparent-background-image-png24-for-uinavigationbar-only-shows-transpar – Irfan
你可以添加你的UINavigationBar的圖像,所以你的問題將清楚給我們。謝謝 – Irfan