Что вам нужно сделать, это создать пользовательский UITableView
. (подклассы UITableView
, путем создания нового файла)
Переопределить метод 'touchesBegan
' этого пользовательского tableView (что мы можем сделать, потому что UITableView
является подклассом UIView
)
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
//resignFirstResponder for the UITextView
//call didSelectRow of tableView again, by passing the touch to the super class
[super touchesBegan:touches withEvent:event];
}
Что мы делаем, так это то, что мы переопределяем, как UITablView
ловит прикосновение. Мы можем сделать это в методе touchesBegan
, поскольку UITableView
является подклассом самого UIView
.
Таким образом, мы можем переопределить метод touchesBegan
, чтобы поймать касание UITableView
, а затем передать его дальше суперклассу нашего пользовательского tableView, который равен UITableView
, так что его 'didSelectRow
'метод вызывается.