Когда я касаюсь UIButton
, методы touchesBegan
, touchesMoved
и touchesEnded
не вызываются. Я хочу выполнить событие, когда происходит непрерывное касание, и отменить событие, когда касание закончится.
touchesBegan и touchesEnded не вызываются на UIButton
Ответы (1)
Вы можете отслеживать начало и завершение касания UIButton с помощью событий управления UIButton.
- (void)viewDidLoad {
[super viewDidLoad];
[self.button addTarget:self action:@selector(touchStarted:) forControlEvents:UIControlEventTouchDown];
[self.button addTarget:self action:@selector(touchEnded:) forControlEvents:UIControlEventTouchUpInside];
[self.button addTarget:self action:@selector(touchEnded:) forControlEvents:UIControlEventTouchUpOutside];
}
- (void)touchStarted:(id)sender {
NSLog(@"Touch started");
}
- (void)touchEnded:(id)sender {
NSLog(@"Touch ended");
}
person
Surya Subenthiran
schedule
16.04.2016
userInteractionEnabled
установлено значение true для кнопки и всех ее суперпредставлений. По умолчанию это верно для большинстваUIViews
, но есть некоторые исключения. - person Hamish   schedule 16.04.2016delegate
? - person farzadshbfn   schedule 16.04.2016