Получение рабочей области таблицы

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

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

Описание

В данном примере реализовано получение рабочих областей таблицы и вывод значений их размеров в консоль среды разработки. Также в консоль выводятся значения признаков доступности фильтрации строк и столбцов, доступности сортировки, признак выполнения стыковки таблицы с ближайшей строкой и столбцом после прокрутки и значение ширины столбцов таблицы. После этого определяются координаты ячейки и таблица прокручивается к этим координатам.

Исходный код

Для выполнения примера необходимо разместить взамен метода executeExample класса ViewController (см. раздел «Создание простой электронной таблицы») следующий код:

-(void) executeExample{
    // Выводим признак того, доступна ли фиксация строк и столбцов
    NSLog(@"%@ %hhd", @"Фиксация строк и столбцов доступна:", [[contr gridView] canFix]);
    // Выводим признак того, доступна ли сортировка строк и столбцов
    NSLog(@"%@ %hhd", @"Сортировка строк и столбцов доступна:", [[contr gridView] canSort]);
    // Выводим признак того, выполняется ли стыковка после прокрутки таблицы с ближайшей строкой и столбцом
    NSLog(@"%@ %hhd", @"Выполнение стыковки с ближайшей строкой и столбцом после прокрутки:", [[contr gridView] dockable]);
    // Получаем объект, предназначенный для выполнения различных действий с таблицей
    ViewController *viewController = [[contr gridView] actionDelegate];
    // Выводим значение ширины столбцов таблицы
    NSLog(@"%@ %f", @"Значение ширины столбцов таблицы:",
          [viewController gridView:(NuGridView *)[contr gridView] widthForColumn:0]);
};
// Обрабатываем событие нажатия на ячейку таблицы
- (void)gridView:(NuGridView *)gridView wasTouchedInCell:(NuGridCell *)cell {
    // Выводим размер всей рабочей области таблицы
    CGRect windowRect = [gridView windowRect];
    NSLog(@"%@ (%f, %f)", @"Размер рабочей области таблицы:", windowRect.size.width, windowRect.size.height);
    // Выводим размер рабочей области таблицы без заголовков
    CGRect windowWithoutHRect = [gridView windowWithoutHeadersRect];
    NSLog(@"%@ (%f, %f)", @"Размер рабочей области таблицы без заголовков:", windowWithoutHRect.size.width,
          windowWithoutHRect.size.height);
    // Выводим размер рабочей области таблицы без заголовков и фиксированных ячеек
    CGRect windowWithouHAndFixedRect = [gridView windowWithoutHeadersAndFixedCellsRect];
    NSLog(@"%@ (%f, %f)", @"Размер рабочей области таблицы без заголовков и фиксированных ячеек:",
          windowWithouHAndFixedRect.size.width, windowWithouHAndFixedRect.size.height);
    // Определяем координаты ячейки
    NuGridPoint *point = [[NuGridPoint new] autorelease];
    [point setRow:2];
    [point setColumn:2];
    // Выполняем прокрутку таблицы к ячейке с указанными координатами
    [gridView showCellInPoint:point];
}

Нажмём на любую ячейку таблицы, после чего в консоль среды разработки будет выведена информация о таблице:

Фиксация строк и столбцов доступна: 1

Сортировка строк и столбцов доступна: 1

Выполнение стыковки с ближайшей строкой и столбцом после прокрутки: 1

Значение ширины столбцов таблицы: 80.000000

Размер рабочей области таблицы: (768.000000, 1024.000000)

Размер рабочей области таблицы без заголовков: (688.000000, 974.000000)

Размер рабочей области таблицы без заголовков и фиксированных ячеек: (688.000000, 974.000000)

Также была выполнена прокрутка таблицы к указанным координатам.

См. также:

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