Отображение составного блока в полноэкранном режиме

Требования к операционной системе: iOS 5.0 и выше.

Мобильное устройство: iPad.

Описание

В данном примере описывается отображение составного блока аналитической панели в полноэкранном режиме.

Исходный код

Для выполнения примера предполагается наличие в аналитической панели (см. раздел «Отображение аналитической панели») более одного составного блока. Далее необходимо заменить тело метода dataViewControllerDidFinishCalculations: в файле статичного примера MADashboardReportViewController.mm на следующий код:

// Получаем контроллер аналитической панели
MADashboardReportViewController* dashboard = (MADashboardReportViewController *)m_controller;
// Получаем аналитическую панель
APKap *kap = [dashboard report];
// Получаем ключ контроллера представления
NSString *key = [[[kap dataViews] allKeys] lastObject];
/* Сравниваем полученный ключ с ключом блока аналитической панели,
 находящегося в полноэкранном режиме */
if (kap.fullScreenBlockKey && [kap.fullScreenBlockKey isEqual:key]) {
    // Скрываем индикатор загрузки
    [dashboard hideActivityIndicator];
}
else {
    // Получаем составной блок аналитической панели
    APCompositeBlock *block = [kap.compositeBlocks objectForKey:key];
    // Скрываем индикатор загрузки составного блока
    [block dataViewControllerDidFinishCalculations];
}
// Получаем массив составных блоков
NSMutableDictionary *blocks = [kap compositeBlocks];
// Получаем ключ составного блока
NSString *blockKey = [[blocks allKeys] objectAtIndex: ([blocks count] - 1)];
// Получаем составной блок по заданному ключу
APCompositeBlock *block = [blocks valueForKey: blockKey];
// Переводим составной блок в полноэкранный режим
[block showFullscreen];
[[block kap] showFullscreenCompositeBlockWithKey: blockKey];

В результате выполнения примера выбранный составной блок был отображен на экране мобильного устройства в полноэкранном режиме:

См. также:

Примеры использования компонентов