我之前使用的是iOS 6.1,但现在我已经转移到iOS 7.除了其他问题之外,我观察到在我的导航栏中,左侧栏按钮项的左侧空间和右侧按钮栏项的右侧空白区域相当IOS 7比iOS 6更多.
我需要知道有没有办法可以减少导航栏中左,右栏按钮项的空格?
提前致谢.
所以我遇到了许多其他人在使用UIButton作为自定义视图创建UIBarButtonItem时遇到的相同问题.
基本上,按钮向左或向右约10像素到远.当我使用没有自定义视图的常规BarButtonItem时,这不会发生.
这篇文章提供了部分解决方案: UIBarButton With Custom View
这是我通过子类化UIButton创建的代码(如另一篇文章中所述)
- (UIEdgeInsets)alignmentRectInsets {
UIEdgeInsets insets;
if ([self isLeftButton]) {
insets = UIEdgeInsetsMake(0, 9.0f, 0, 0);
}
else { // IF ITS A RIGHT BUTTON
insets = UIEdgeInsetsMake(0, 0, 0, 9.0f);
}
return insets;
}
- (BOOL)isLeftButton {
return self.frame.origin.x < (self.superview.frame.size.width / 2);
}
Run Code Online (Sandbox Code Playgroud)
这很好用,但当我从导航控制器弹出一个视图控制器回到这个主视图时,按钮仍然错误地定位了大约.3秒,然后它捕捉到正确的插图.
这是一个巨大的眼睛,我不知道如何阻止它像这样攫取.有什么想法吗?谢谢!
我创建了自定义UINavigation Back Button
.但是iOS 6和iOS 7中按钮的来源不同.
iOS 6外观:
iOS 7外观:
如何UINavigation Back Button
在iOS 7 中将原点设置为与iOS 6中相同?