如果你有手勢識別器,你應該做這樣的方式
UITapGestureRecognizer *gestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(methodThatYouMayCall)];
[myTextField addGestureRecognizer:gestureRecognizer];
gestureRecognizer.delegate = self;
gestureRecognizer.cancelsTouchesInView = NO;
,這將清除文本框以及火災「methodThatYouMayCall」當你點擊清除按鈕,這樣你應該這樣做,以及 您textField.clearButtonMode是一種UIButton的類,這樣就可以做到這一點的方式
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
if ([touch.view isKindOfClass:[UIButton class]])
{
return NO;
}
else
{
return YES;
}
}
不要忘記將類標記爲實現UIGestureRecognizerDelegate協議。希望這會幫助你。
與你一樣,我還使用UITapGestureRecognizer來捕捉表上的水龍頭。謝謝 – huuang 2012-08-31 10:09:21
應該在哪裏執行cancelsTouchesInView = NO?在tap方法中? – 2013-05-30 12:01:22
更完整的例子會很好;-) – 2013-05-30 12:20:23