2

我正在尝试自定义导航栏的 UIBarbuttonItem 以便我在我的 Appdelegate.m 中使用它

// didFinishLaunchingWithOptions: 

{
  UIImage *navBarImage = [UIImage imageNamed:@"nav-bar.png"];

  [[UINavigationBar appearance] setBackgroundImage:navBarImage
                                   forBarMetrics:UIBarMetricsDefault];

  [[UINavigationBar appearance] setTitleVerticalPositionAdjustment:5
                                                   forBarMetrics:UIBarMetricsDefault];



  UIImage *barButtonSave = [[UIImage imageNamed:@"nav-bar-button.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 2, 0, 2)];


[[UIBarButtonItem appearance] setBackgroundImage:barButtonSave
                                        forState:UIControlStateNormal
                                           style:UIBarButtonItemStyleDone
                                      barMetrics:UIBarMetricsDefault];

[[UIBarButtonItem appearance] setBackgroundVerticalPositionAdjustment:5 forBarMetrics:UIBarMetricsDefault];


return YES;

}

完成此操作后,我只需将 UIBarbuttonItem 与 Storyboard 一起放置即可。关键是我注意到“保存”按钮在我的视图之间发生了变化!

看起来在我的 DetailView 中向下移动了几个像素:

在此处输入图像描述

这是为什么?

4

1 回答 1

0

我仍然不知道为什么。但我解决了为我的自定义 UIbarbuttonItem 图像提供 30px 默认高度的问题。

[查看 UIBarButtonItem 在 UINavigationController 推送后向下移动的类似问题

于 2013-03-23T09:21:29.187 回答