0

我正在开发一个我使用的应用程序UINavigationController。我想为后退按钮设置图像。我使用下面的代码执行此操作。

UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"backArrow.png"] style:UIBarButtonItemStyleBordered target:nil action:nil];
self.navigationItem.backBarButtonItem = backButton;

但是图像只出现在后退按钮的中间。如何将图像设置为跨越整个后退按钮?

4

1 回答 1

0

对于中的后退按钮UINavigationBar,如果添加图像,它将仅在后按钮的中心显示图像。您也不能在其中添加图像。因此,不要这样做,而是隐藏您的backbutton代码并在您的方法中添加此代码viewDidload以为其添加图像,看起来就像您需要的那样。

    self.navigationItem.hidesBackButton = YES;
 UIButton *button = [UIButton buttonWithType: UIButtonTypeCustom]; 
    [button setBackgroundImage:[UIImage imageNamed:@"back_normal"] forState:UIControlStateNormal];  
    [button setBackgroundImage:[UIImage imageNamed:@"back_pressed"] forState:UIControlStateSelected];
    [button addTarget: nil action:@selector(popViewControllerAnimated:) forControlEvents:UIControlEventTouchUpInside]; 
    button.frame = CGRectMake(0, 0, 50, 30);  
    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView: button];
于 2012-04-06T11:06:24.843 回答