Я создал UIToolBar с UIBarButtonItems, но когда я нажимаю их, селектор не вызывается. Любая помощь будет принята с благодарностью.UIBarButtonItems не вызывает действия
UPDATE
На основе предложений в комментариях, я изменил мой код, но, к сожалению, кнопки по-прежнему не работают.
-(void)buildBottomMenu
{
UIImage *newsImg = [UIImage imageNamed:@"243-globe"];
UIBarButtonItem *newsBtnItem = [[UIBarButtonItem alloc] initWithImage:newsImg style:UIBarButtonItemStylePlain target:self action:@selector(loadHome)];
UIImage *weatherImg = [UIImage imageNamed:@"25-weather"];
UIBarButtonItem *weatherBtnItem = [[UIBarButtonItem alloc] initWithImage:weatherImg style:UIBarButtonItemStylePlain target:self action:@selector(loadWeather)];
UIImage *sportsImg = [UIImage imageNamed:@"63-runner"];
UIBarButtonItem *sportsBtnItem = [[UIBarButtonItem alloc] initWithImage:sportsImg style:UIBarButtonItemStylePlain target:self action:@selector(loadSports)];
UIImage *entrnImg = [UIImage imageNamed:@"178-city"];
UIBarButtonItem *entrnBtnItem = [[UIBarButtonItem alloc] initWithImage:entrnImg style:UIBarButtonItemStylePlain target:self action:@selector(loadEntertainment)];
UIImage *videoImg = [UIImage imageNamed:@"69-display"];
UIBarButtonItem *videoBtnItem = [[UIBarButtonItem alloc] initWithImage:videoImg style:UIBarButtonItemStylePlain target:self action:@selector(loadVideoPage)];
UIImage *moreImg = [UIImage imageNamed:@"259-list"];
UIBarButtonItem *moreBtnItem = [[UIBarButtonItem alloc] initWithImage:moreImg style:UIBarButtonItemStylePlain target:self action:@selector(loadOptionsPage)];
UIBarButtonItem* flexibleSpace = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
target:nil action:nil];
[_bottomBar setItems:[NSArray arrayWithObjects:flexibleSpace,newsBtnItem,flexibleSpace,
weatherBtnItem,flexibleSpace,
sportsBtnItem,flexibleSpace,
entrnBtnItem,flexibleSpace,
videoBtnItem,flexibleSpace,
moreBtnItem,flexibleSpace,
nil]];
[self.view addSubview:_bottomBar];
}
Вот селектор выборки:
- (void)loadWeather
{
NSLog(@"Loading weather");
}
Почему вы создаете объекты 'UIButton' для размещения на панели инструментов? Попробуйте создать 'UIBarButtonItem' с помощью метода initWithImage .... – rmaddy
также убедитесь, что выбранные вами селекторы не принимают никаких параметров. Если вы хотите передать отправителя селектору с параметром 'loadOptionsPage: (id) отправителя, обязательно включите трейлинг-двоеточие в имена вашего селектора. например '@selector (loadOptionsPage:)' – atreat
Спасибо за предложение @rmaddy, я внес изменения, но все еще не повезло с работающими кнопками. atreat, селекторы не принимают параметры. –