大廈豪爾赫的代碼,這是我的解決方案。
我上UIViewController
創建一個簡單的分類:
的UIViewController + ImageBackButton.h
#import <UIKit/UIKit.h>
@interface UIViewController (ImageBackButton)
- (void)setUpImageBackButton;
@end
的UIViewController + ImageBackButton.m
#import "UIViewController+ImageBackButton.h"
@implementation UIViewController (ImageBackButton)
- (void)setUpImageBackButton
{
UIButton *backButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 34, 26)];
[backButton setBackgroundImage:[UIImage imageNamed:@"back_arrow.png"] forState:UIControlStateNormal];
UIBarButtonItem *barBackButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];
[backButton addTarget:self action:@selector(popCurrentViewController) forControlEvents:UIControlEventTouchUpInside];
self.navigationItem.leftBarButtonItem = barBackButtonItem;
self.navigationItem.hidesBackButton = YES;
}
- (void)popCurrentViewController
{
[self.navigationController popViewControllerAnimated:YES];
}
@end
現在,所有你需要做的在你所有的v中都是#import UIViewController+ImageBackButton.h
IEW控制器或自定義基本視圖控制器類,您的其他視圖控制器繼承並實現viewWillAppear:
方法:
- (void)viewWillAppear:(BOOL)animated
{
[self setUpImageBackButton];
}
這就是全部。現在你有一個圖像後退按鈕。沒有邊界。請享用!
感謝您的回答。我嘗試了不同的圖像尺寸,但沒有一個能夠工作。我總是在縮放的圖像周圍找到邊框。如果我使用LeftBarButtonItem而不是BackBarButtonItem,會發生類似的情況。你是否知道任何包含工作映像和代碼的示例項目? – Denny 2011-01-30 19:24:52
不,我不知道有任何項目,但今晚我可能會嘗試把它們放在一起。 – Moshe 2011-01-30 19:34:03