iOS - Программно добавленные кнопки с другой целью, всегда вызывает цель последней добавленной кнопки - PullRequest
0 голосов
/ 24 марта 2020

Я добавил две кнопки программным способом в пользовательский интерфейс, как показано ниже.

Обе кнопки имеют разные цели, но каким-то образом они обе вызывают последнее добавленное действие кнопок.

Например, для кода ниже оба кнопки вызывают метод btnResendCallAction.

Любая помощь будет оценена.

self.btnResendSMS = [UIButton buttonWithType:UIButtonTypeCustom];
[self.btnResendSMS setFrame:CGRectMake( edge, btn_y, self_w -edge*2, 150)];
[self.btnResendSMS setTitle:strBtnTitle forState:UIControlStateNormal];
//[self.btnResendSMS setTintColor:[UIColor blueColor]];
[self.btnResendSMS setTitleColor:[UIButton buttonWithType:UIButtonTypeCustom].tintColor forState:UIControlStateNormal];
[self.btnResendSMS addTarget:self action:@selector(btnResendSMSAction) forControlEvents:UIControlEventTouchUpInside];
[self.btnResendSMS setEnabled:NO];
[self.btnResendSMS setAlpha:0.3f];
[self.view addSubview:self.btnResendSMS];


self.btnResendCall = [UIButton buttonWithType:UIButtonTypeCustom];
[self.btnResendCall setFrame:CGRectMake( edge, btn_y + 60, self_w -edge*2, 150)];
[self.btnResendCall setTitle:strBtnTitleCall forState:UIControlStateNormal];
//[self.btnResendSMS setTintColor:[UIColor blueColor]];
[self.btnResendCall setTitleColor:[UIButton buttonWithType:UIButtonTypeCustom].tintColor forState:UIControlStateNormal];
[self.btnResendCall addTarget:self action:@selector(btnResendCallAction) forControlEvents:UIControlEventTouchUpInside];
[self.btnResendCall setEnabled:NO];
[self.btnResendCall setAlpha:0.3f];
[self.view addSubview:self.btnResendCall];

1 Ответ

1 голос
/ 24 марта 2020

На самом деле с этим кодом я бы ожидал, что кнопки будут перекрываться. Но это не очевидно, потому что у них есть четкое происхождение и никаких границ. Итак, вы думаете, что вы нажимаете кнопку 1, но вы нажимаете на часть кнопки 2, которая закрывает ее.

Дайте кнопке 2 только красный цвет фона, и это будет более очевидно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...