2017-10-02 25 views
2

iOS 11のナビゲーションバーのタイトルビューとバーボタンの項目が中央に配置されていません。 また、背景画像の高さは変わらないとfull.Theバーの高さに示されていない74iOS 11 UINavigation Barがめちゃくちゃになっています

enter image description here は、ホワイトスペースを参照してくださいています。

私はこの

if(@available(iOS 11,*)){ 
    _homeNavigationBar.prefersLargeTitles = NO; 
    _homeNavigationItem.largeTitleDisplayMode = UINavigationItemLargeTitleDisplayModeNever; 
    [_homeNavigationBar setBarTintColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"navbarBg.png"]]]; 
} 
else{ 
    [_homeNavigationBar setBackgroundImage:[UIImage imageNamed:@"navbarBg.png"] forBarMetrics:UIBarMetricsDefault]; 
} 

を試してみました。しかし、まだ、私はタイトルバーボタンアイテムを中心することができません。

私はこの問題を解決することができますどのように任意のアイデア?私は、ナビゲーションバーが私のためにトリックをしたサブクラス

+0

https://stackoverflow.com/questions/46326554/ios-11-custom-navbar-goes-under-status-bar – iPatel

答えて

0

know.Thanks聞かせください。

- (void)layoutSubviews { 
[super layoutSubviews]; 

for (UIView *view in self.subviews) { 
    if([NSStringFromClass([view class]) containsString:@"Background"]) { 
     view.frame = self.bounds; 
    } 
    else if ([NSStringFromClass([view class]) containsString:@"ContentView"]) { 
     CGRect frame = view.frame; 
     frame.origin.y = 25; 
     view.frame = frame; 
    } 
} 
} 
+0

25ステータスバーの高さが20であるとして、20でなければなりません... –

+0

これは、 **間違った**。以前のiOSバージョンではステータスバーが高かったのは20点でした。 (40歳になる可能性もあります)。あなたは決して固定された高さを取るべきではない。 –

関連する問題