2012-03-25 102 views
2

什麼是最簡單的方式來檢測UITableView背景上的水龍頭?我想趕上這些關閉鍵盤。檢測UITableView背景上的水龍頭

不幸的是,當我添加一個UITapGestureRecognizer到tableview時,點擊單元格會觸發處理程序。

回答

2

在你的UI(表)的ViewController或在您的UITableView,重寫

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

,並且如果正被示出的鍵盤,其關閉。另外,不要忘記將此事件轉發給您的子視圖。

+0

這是不是也抓住了細胞的抽頭?我不想那樣。 – 2012-03-27 15:07:42

+0

然後,如果觸摸是在UITableViewCell的邊界,請不要將您的事件轉發給子視圖,並簡單地關閉鍵盤:) – 0xSina 2012-03-27 19:09:47

+0

嗯,我想我可以抓住所有單元的矩形並尋找觸摸 - 但是希望有更高的水平。 – 2012-03-29 00:51:00

1

在tableview的背景視圖中添加手勢。像這樣:

UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self 
                      action:@selector(tableViewBackgroundTap)]; 

[self.tableView.backgroundView addGestureRecognizer:tapGesture]; 
+1

它對我不起作用 – 2015-04-29 10:27:47

+0

如果不先創建&設置'backgroundView',則不起作用。 – 2016-06-01 18:06:05