2010-04-17 64 views
0

在我们的应用程序中,我使用导航栏上的左右按钮。 我想要一个图像在后面(左)按钮。如果我使用的段,然后 必要定义后退按钮的动作。 请给我任何方法。导航栏上的图像后退按钮

+3

您已经提问了23个问题,而且未将答案标记为“已接受”(答案旁边的绿色复选标记)。这样做会鼓励更多的人回答你的问题。这是一种表达感谢的方式,并感谢那些帮助过你的人。 – 2010-04-17 15:47:22

+0

感谢那 – 2010-04-19 04:23:28

+0

大声笑,但...仍然没有在这篇文章中接受的答案。 – n00shie 2012-11-15 01:36:56

回答

0

是的,如果您使用Bar Button项目,您可以转到Interface Builder中的Bar Button Item属性,并且应该有一个Image选项可以选择。

0

您可以通过继承UINavigationBar的做,然后创建一个方法是这样的:

+ (UIBarButtonItem *)barButtonWithImage:(NSString *)imageName target:(id)target action:(SEL)action { 
    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [button addTarget:target action:action forControlEvents:UIControlEventTouchUpInside]; 
    UIImage *titleImage = [UIImage imageNamed:imageName]; 
    [button setImage:titleImage forState:UIControlStateNormal]; 
    [button sizeToFit]; 
    UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:button]; 
    return item; 
} 

然后将其添加到您的导航条是这样的:

[self.navigationItem setLeftBarButtonItem:[TFNavigationBar barButtonWithImage:@"rp_settings.png" target:self action:@selector(showSettings)]]; 

PS:我更喜欢使用单身,这就是它的原因。

0

我们发现用我们自己的替换后退按钮的最简单方法就是这样。

  1. 在视图外的nib文件中添加一个后退按钮。根据需要定制它。
  2. 将它作为IBOutlet连接。我们称之为btnBack。
  3. 在viewDidLoad中
  4. 做到这一点:

    UIBarButtonItem *back = [[UIBarButtonItem alloc] initWithCustomView:btnBack]; 
    [self.navigationItem setLeftBarButtonItem:back animated:YES]; 
    
  5. 连接动作到您的backBtn这样的:

    - (IBAction)Back:(id)sender { 
    [self.navigationController popViewControllerAnimated:YES]; 
    } 
    

和多数民众赞成它,你拥有属于自己的定制后退按钮:)

0

如果你想简单地用你的应用程序中的图像替换你的后退按钮..

[[UINavigationBar appearance] setBackIndicatorImage:[UIImage imageNamed:@"back_button"]]; 
[[UINavigationBar appearance] setBackIndicatorTransitionMaskImage:[UIImage imageNamed:@"back_button"]]; 

或者对于特定的导航栏,请指定navBar而不是'[UINavigationBar appearance]'。这工作完美。