左側に表示されているデフォルトのナビゲーションを非表示にし、独自のカスタムボタンを追加したいナビゲーションベースのアプリケーションが1つあります。次の2つのコードを記述しました。
コードサンプル1:
- (void)viewDidLoad {
appDelegate=[(FoodAppDelegate *)[UIApplication sharedApplication]delegate];
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:[UIImage imageNamed:@"Volunteers_back.png"] forState:UIControlStateNormal];
[button addTarget:self action:@selector(back:) forControlEvents:UIControlEventTouchUpInside];
[button setFrame:CGRectMake(0, 0, 86, 30)];
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:button];
ただし、これはデフォルトのナビゲーションボタンを表示します。
2番目のコードサンプル:
self.navigationItem.hidesBackButton=YES;
UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithTitle:@"DontWorryAboutThis" style:UIBarButtonItemStylePlain target:self action:@selector(back:)];
[barButton setImage:[UIImage imageNamed:@"Volunteers_back.png"]];
[self.navigationItem setLeftBarButtonItem:barButton];
これは、ボタンのデフォルトとカスタムの両方が互いにオーバーラップしていることを示しています。誰かがここで何が問題なのか、またはこれを達成するためのサンプルコードを知っていますか?