我的应用程序在UINavigationController中运行。当我从右侧推入新的视图控制器时,右上方的UIBarButtonItem(Edit)向下移动1个像素 - 编辑按钮保持不变,但图形明显向下移动。UIBarButtonItem在UINavigationController推送后向下移动
我注意到这只发生在我为酒吧按钮项目设置UIAppearance代理之后。这是我的代码这样做:
UIImage *barButton = [[UIImage imageNamed:@"navBarBarButton"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 5, 0, 5)];
[[UIBarButtonItem appearance] setBackgroundImage:barButton
forState:UIControlStateNormal
barMetrics:UIBarMetricsDefault];
navBarBarButton.png是一个52x31酒吧按钮图像。
其他可能相关的信息:
- 这只是发生在iOS 6中模拟器 - 这是罚款的iOS 5
- 这个程序使用故事板,并推动通过塞格斯处理。
- 单像素位移只发生一次,即当我进入另一个级别进入导航控制器时,它不会再次下推。
- “编辑”按钮的文本保留在原来的位置;只有按钮图形移动。
- 我试着在不同的视图控制器(即导航堆栈中的第二个)中启动应用程序。酒吧按钮项目显示在正常(较高)位置,然后在推入新视图时向下移动。这似乎表明它与任何特定的视图控制器无关。
有没有人看到这个,知道为什么会发生这种情况,或者如何防止按钮转移?谢谢。
是否可以切换慢速动画模式并在之前/之后捕获差异? – 2013-03-18 14:30:40
拍了[视频(http://f.cl.ly/items/33313O0T3j212C040R3k/Screeny%20Video%2019%20Mar,%202013%2012.29.34%20AM.mov)...原谅静态的背景下,这是我的粉丝:P – yjsoon 2013-03-18 16:31:41