5

我正在设置 self.navigationItem.rightBarButtonItem = self.editButtonItem; 在 viewDidLoad 中,这在 iOS < 7 in 7 中完美运行我在下面得到,为什么标题不居中?我究竟做错了什么?

在此处输入图像描述

此外,当有一个后退按钮并且至少有一次我没有点击它时: 在此处输入图像描述

点击后我得到: 在此处输入图像描述

按钮的背景在应用委托中设置:

    // Change the appearance of back button
UIImage *backButtonImage = [[UIImage imageNamed:@"backbtn"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 13, 0, 6)];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:backButtonImage forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

// Change the appearance of other navigation button

UIImage *barButtonImage = [[UIImage imageNamed:@"btn"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 6, 0, 6)];
[[UIBarButtonItem appearance] setBackgroundImage:barButtonImage forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
4

1 回答 1

0

在iOS7下导航也有同样的问题...

在这里 那里得到了几个答案,但它们似乎没有帮助。如果您使用 UINavigationBar 的 backIndicatorImage 它会粘在顶部,我不知道如何修复它。

我最终做了这里的建议

像这样创建一个 UIBarButtonItem:

UIBarButtonItem* backBtn = [[UIBarButtonItem alloc] initWithTitle:@"Back"
                                                            style:UIBarButtonItemStylePlain
                                                           target:self
                                                           action:@selector(backButtonAction:)];

backBackgroundImage = [UIImage imageNamed: @"back_btn"];
backBackgroundImage = [backBarButtonBackground resizableImageWithCapInsets:
                                                          UIEdgeInsetsMake(0.0, 14.0, 0.0, 5.0)];
[backBtn setBackgroundImage:backBackgroundImage
                   forState:UIControlStateNormal
                 barMetrics:UIBarMetricsDefault];

[backBtn setTitlePositionAdjustment:UIOffsetMake(5, 0) forBarMetrics:UIBarMetricsDefault];

然后将其用作导航控制器上的后退按钮。

于 2013-10-17T13:40:37.917 回答