ナビゲーション バーの左側に 2 つのボタンが必要です。その方法を見つけた唯一の方法は、最初にそれらを UIToolbar に入れてから、 leftBarButtonItem をそれに設定することです。
これを行うと、通常どおり動作します (タップすると強調表示されます)。
UIBarButtonItem* myBtn = [[UIBarButtonItem alloc] initWithTitle:@"Button" style:UIBarButtonItemStyleBordered target:self action:@selector(doSomething:)];
self.navigationItem.leftBarButtonItem = myBtn;
しかし、このようにすると、ボタン アクションは引き続き発生しますが、ハイライトは表示されません (ボタンをタップしているという視覚的なフィードバックはありません)。
NSMutableArray* buttons = [[NSMutableArray alloc] initWithCapacity:2];
UIBarButtonItem* myBtn = [[UIBarButtonItem alloc] initWithTitle:@"Button" style:UIBarButtonItemStyleBordered target:self action:@selector(doSomething:)];
UIBarButtonItem* myBtn2 = [[UIBarButtonItem alloc] initWithTitle:@"Button2" style:UIBarButtonItemStyleBordered target:self action:@selector(doSomethingElse:)];
[buttons addObject:myBtn];
[buttons addObject:myBtn2];
UIToolbar* toolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 133, 44)];
[toolbar setItems:buttons animated:NO];
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:toolbar];
これにより、タッチしたときにボタンが強調表示されない理由は何ですか?