Как программно создать UIButton в iOS 14 в objective- C? - PullRequest
0 голосов
/ 05 августа 2020

Я пытаюсь программно создать UIButton в iOS 14 (бета 3) в objective- C. Это то, что я пробовал, но обработчик UIAction никогда не вызывается, когда я нажимаю кнопку:

UIAction *tapAction = [UIAction actionWithHandler:^(UIAction* action){
     NSLog(@"Never gets here");
}];
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 100, 100) primaryAction:tapAction];

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 06 августа 2020

Я написал тестовое приложение, которое просто отображает кнопку, и оно работает, поэтому проблема должна быть в другом в моем основном приложении. Всем спасибо.

0 голосов
/ 05 августа 2020

Вот как я обычно создаю кнопку в Objective- C:

- (void)createButton {
    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
    button.frame = CGRectMake(0, 0, 50, 100);
    [button addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];
}
    
- (void)buttonClicked:(UIButton *)sender {
   // Do your logic here
}

Вы можете прочитать больше здесь: https://developer.apple.com/documentation/uikit/uicontrol/1618259-addtarget

...