Не стоит слишком увлекаться частью этой вкладки. Подумайте, как будет работать более простое приложение: если вы выберете ячейку в RootViewController, как вы будете уведомлять DetailViewController?
Это не будет автоматом. Скорее всего, у вас будет выделенное соединение от RootViewController к DetailViewController - и вы вызовете некоторый метод для DetailViewController из RootViewController в чем-то вроде
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
метод в RootViewController. Действительно, именно так настраивается шаблонное приложение UISplitView для iPad. Существует соединение IBOutlet от RootViewController к DetailViewController.
Пока вы правильно управляете памятью (сохраняете, освобождаете) - не должно быть проблем, если каждый из ваших (корневых) контроллеров представления (в представлении с вкладками) имеет соединение с одним DetailViewController. Чтобы контроллеры табло не наступали друг на друга, вы можете централизовать логику в класс «посредника». Может быть, вы хотите что-то очистить непосредственно перед тем, как ViewControllerB отсортирует детали, которые только что отсортировал ViewControllerA ...
Эта часть зависит от вас. Просто отметьте, что не происходит никакой черной магии бэкэнда, так что DetailViewController автоматически обновляется, чтобы показать что-то на основе ячейки, выбранной в любом RootViewController.