Программно генерируя UIButtons и партнера те, которые имеют IBAction

Как я делаю, если я хочу программно генерировать ряд кнопок и затем связать тех, которые имеют IBActions? Легко, если я добавляю кнопки в Интерфейсном Разработчике, но что я не могу сделать для этого случая.

16
задан Cœur 15 April 2017 в 19:12
поделиться

2 ответа

Кнопки имеют метод - (void) addTarget: (id) target action: (SEL) action forControlEvents: (UIControlEvents) controlEvents .

Используемый код будет выглядеть следующим образом:

UIButton *myButton = [[UIButton alloc] init...];
[myButton addTarget:something action:@selector(myAction) forControlEvents:UIControlEventTouchUpInside];

Предполагается, что ваше IBAction называется myAction и что something является контроллером, для которого определено это действие.

32
ответ дан 30 November 2019 в 16:36
поделиться

Сначала создаем кнопку:

UIButton * btn;

btn = [ [ UIButton alloc ] initWithFrame: CGRectMake( 0, 0, 200, 50 ) ];

Затем добавляем действие:

[ btn addTarget: self action: @selector( myMethod ) forControlEvents: UIControlEventTouchDown ];

Затем добавляем кнопку в представление:

[ someView addSubView: btn ];
[ btn release ];

Ссылка на UIControl Ссылка на UIButton

6
ответ дан 30 November 2019 в 16:36
поделиться