2017-10-18 44 views
0

我在低于iOS的11
iOS的11 leftBarButtonItem/rightBarButtonItem位置错误

我的代码是在这里发现UINavigationBar.height = 56在iOS11UINavigationBar.height = 44

UIBarButtonItem *scanButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"scan_code"] style:UIBarButtonItemStylePlain target:self action:@selector(pushScanController)]; 
self.navigationItem.leftBarButtonItem = scanButton; 

存在位置错误在iOS11中。

如图所示:

enter image description here

enter image description here

我怎样才能修复这个bug?

回答

0

它看起来像你的问题是通过搜索栏被而不是在按键更大的东西造成的。

你可能想尝试这样的:

if #available(iOS 11.0, *) { 
    [[self.yourSearchBar.heightAnchor constraintEqualToConstant:44.0] setActive:YES] 
} 

或调查并实施了iOS 11搜索栏的变化。

+0

根据你的代码,UI显示还是有点不正常。 另外,在VC下调用另一个VC,会有一个UINavigationBar启动画面,因为下一个VC UINavigationBar.height = 56。所以这样做还是不太好。 – Eddiegooo