Если вы используете UITableView, то tableView: didSelectRowAtIndexPath: будет отправляться вам (делегату табличного представления (обычно это контроллер табличного представления)) каждый раз, когда пользователь нажимает строку в вашей таблице.
В приложении «Контакты» все телефонные номера / электронные письма / адреса для этого контакта сгруппированы в своем собственном «разделе». Читая раздел из indexPath, используя [indexPath section], вы получите индекс для раздела (NSInteger).
Используя собственную логику приложения, вы можете использовать этот индекс, чтобы определить, нажал ли пользователь что-либо в разделе телефон / почта / адрес. Теперь, когда вы знаете, какую информацию пользователь нажал, вы можете сделать правильную вещь (позвонить по телефону / отправить электронное письмо / дать указания)
Продолжая использовать тот же indexPath, вы можете получить точную ячейку табличного представления, по которой пользователь щелкнул, используя [indexPath row]. Теперь вы можете отправить эту информацию (скажем, номер телефона) на свой собственный код для обработки этой информации (инициировать телефонный звонок).
(надеюсь, это помогло, это был мой первый ответ на StackOverflow)