【发布时间】:2015-10-04 01:08:24
【问题描述】:
我添加了以下内容来自定义导航栏中的后退按钮,但图像只是重叠/重复:
http://i.stack.imgur.com/eyzJC.png
- (void)viewWillAppear:(BOOL)animated
{
//take out the label following the button
UIBarButtonItem *backButton = [[UIBarButtonItem alloc]initWithTitle:@"" style:UIBarButtonItemStylePlain target:nil action:nil];
//set image for back button
[[UINavigationBar appearance] setBackIndicatorImage:[UIImage imageNamed:@"backButtonImage.png"]];
[[UINavigationBar appearance] setBackIndicatorTransitionMaskImage:[UIImage imageNamed:@"backButtonImage.png"]];
self.navigationItem.backBarButtonItem = backButton;
}
它应该是一个朝左的黑色箭头的图像。
之前它工作正常,但现在我模拟它时它会这样做。任何见解和帮助将不胜感激。
谢谢
【问题讨论】:
-
你为什么在
viewWillAppear:而不是viewDidLoad:中这样做?每次视图出现时都会替换后退按钮,但应该执行一次。我想你可以简单地隐藏后栏按钮项目(self.navigationItem.backBarButtonItem = nil;或self.navigationItem.hidesBackButton = YES;),然后添加一个自定义的带有IBAction的执行[self.navigationController popViewControllerAnimated:YES]; -
这里问了一个类似的问题:stackoverflow.com/questions/3506297/…
-
@AlejandroIván 似乎不起作用。你能提供完整的实现吗?
标签: ios objective-c xcode uinavigationbar