Требования к операционной системе: iOS 5.0 и выше.
Мобильное устройство: iPad.
В данном примере демонстрируется работа с контейнером, разделённым на два представления данных. После запуска примера выполняются следующие операции:
в качестве первого представления данных устанавливается контейнер панели измерений;
первое представление данных смещено вправо на 5% от его размера;
в качестве второго представления данных устанавливается таблица;
отображается заголовок в контейнере с текстом «Prognoz» и с отступом слева, равным 50 пикселям;
заголовок отделяется от второго представления данных горизонтальной линией чёрного цвета;
во время загрузки второго представления данных отображается индикатор загрузки.
Для выполнения примера необходимо разместить в теле метода executeExample класса ViewController (см. раздел «Отображение экспресс-отчёта») следующий код:
// Получаем контроллер для работы с экспресс-отчётом MAExpressAnalysisReportViewController *contr = (MAExpressAnalysisReportViewController *)m_controller; // Получаем контейнер панели измерений PanelViewController *panelViewCtrl = [contr panelViewController]; // Создаём контроллер для работы с контейнером, разделённым на два представления данных SplitViewController *splitController = [SplitViewController new]; // Загружаем контейнер [splitController loadView]; // Отображаем индикатор загрузки для второго представления [splitController showWaiter]; // Устанавливаем контейнер панели измерений в качестве первого представления данных контейнера [splitController setPanelViewController: panelViewCtrl]; // Устанавливаем расположение разделителя двух представлений данных контейнера [[splitController splitView] setSeparatorPosition: (panelViewCtrl.view.frame.size.width * 1.05)]; // Отключаем анимацию при изменении положения разделителя в контейнере [splitController setNoResizeUntilAnimated: YES]; // Создаём таблицу для отображения в качестве второго представления данных UITableViewController *table = [UITableViewController new]; // Устанавливаем второе представление данных контейнера [splitController setSecondView: [table view]]; // Создаём заголовок в контейнере SplitViewTitleView *title = [[splitController splitView] titleView]; // Устанавливаем цвет нижней границы области заголовка в контейнере [title setBottomLineColor: [UIColor blackColor]]; // Устанавливаем отступ текста от левой границы области заголовка [title setLeftPadding: 50]; // Устанавливаем текст заголовка [[title titleLabel] setText: @"Prognoz"]; // Устанавливаем цвет заливки области заголовка [title setBackgroundColor: [UIColor colorWithHex:@"d9d9d9"]]; // Устанавливаем высоту заголовка в контейнере [[splitController splitView] setTitleHeight: 70.0]; // Обновляем заголовок в контейнере [title updateTitleViewFrame]; // Отображаем заголовок [[splitController splitView] setHasTitle: YES]; // Отображаем контейнер с разделителем [self showViewControllerInNavigationController: splitController]; // Скрываем индикатор загрузки второго представления данных [splitController hideWaiter]; // Обновляем контейнер с разделителем [[splitController splitView] update];
В результате выполнения примера был отображён контейнер, разделённый на контейнер панели измерений и представление данных в виде таблицы:

Первое представление смещено вправо на 5% от его размера. В верхней части второго представления отображён заголовок в контейнере с текстом «Prognoz» и с отступом слева, равным 50 пикселям. Заголовок отделяется от второго представления горизонтальной линией чёрного цвета.
Результат выполнения примера останется тем же, если строку кода:
[splitController setSecondView: [table view]];
заменить на следующую строку:
[splitController setContentViewController: table];
Обе строки предназначены для установки второго представления контейнера.
Теперь удалим первое представление контейнера, добавив к примеру следующую строку кода:
[splitController setNoFirstViewMode: [splitController firstViewVisible]];
После выполнения примера контейнер с панелью измерений был удалён:

См. также: