1. 程式人生 > >navigationBar相關設定(透明度、去掉下方黑線)

navigationBar相關設定(透明度、去掉下方黑線)

去除navigationBar下方黑線

// 去掉navigationBar下方的黑線
    [self.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
    self.navigationBar.barStyle = UIBarStyleDefault;
    self.navigationBar.translucent = NO;
    [self.navigationBar setShadowImage:[UIImage new]];
    self.extendedLayoutIncludesOpaqueBars
= YES;

設定navigationBar透明度引起的相關問題

iOS7之後由於navigationBar.translucent預設是YES,座標零點預設在(0,0)點  當不透明的時候,零點座標在(0,64)
如果你想設定成透明的,而且還要零點從(0,64)開始,controller中新增self.edgesForExtendedLayout = UIRectEdgeNone;

如果如果設定不透明,座標零點預設在(0,0)點 可以在controller中新增self.extendedLayoutIncludesOpaqueBars = YES;