Кнопка Info Как UIBarButtonItem не реагирует на нажатия


Я пытаюсь программно добавить и кнопку info в навигацию моего приложения. Однако он никогда не запускает действие, которое я регистрирую на нем.

UIBarButtonItem* infoButton =[[UIBarButtonItem alloc] initWithCustomView:[UIButton buttonWithType:UIButtonTypeInfoLight]];
    [infoButton setTarget:self];
    [infoButton setAction:@selector(infoButtonTapped)];

Кнопка отображается в моей навигационной панели, но нажатие на нее не переходит в infoButtonTapped

1 3

1 ответ:

Добавьте цель / действие в UIButton. Элемент bar button ведет себя по-другому, когда он настроен из UIButton.

UIButton *button = [UIButton buttonWithType:UIButtonTypeInfoLight];
[button addTarget:self action:@selector(infoButtonTapped) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *infoButton = [[UIBarButtonItem alloc] initWithCustomView:button];