Решение

Решение

Выполните следующие шаги.

1. Создайте по файлу. xib для верхнего и для нижнего колонтитулов.

2. Найдите в библиотеке объектов конструктора интерфейса по одному объекту Collection Reusable View и перетащите их в ваши. xib-файлы. Убедитесь, что эти многоразовые сборные виды являются единственными видами в своих. xib-файлах. Таким образом, многоразовый сборный вид становится корневым видом вашего. xib-файла. Именно так создаются колонтитулы в сборных видах.

3. Если вы хотите более полно контролировать поведение. xib-файлов, создайте класс Objective-C и ассоциируйте с ним корневой вид вашего. xib-файла. Таким образом, всякий раз, когда iOS будет загружать с диска содержимое. xib-файла, ассоциированный с ним класс также будет загружаться в память и вы будете получать доступ к иерархии видов в. xib-файле.

4. Инстанцируйте метод экземпляра registerNib: forSupplementaryViewOfKind: withReuseIdentifier: сборного вида и зарегистрируйте ваши nib-файлы для разновидностей видов UICollectionElementKindSectionHeader и UICollectionElementKindSectionFooter.

5. Чтобы правильно оформить виды верхних и нижних колонтитулов перед тем, как они будут отображены, реализуйте метод collectionView: viewForSupplementaryElementOfKind: atIndexPath: источника данных сборного вида, а в этом методе запустите другой метод сборного вида, dequeueReusableSupplementaryViewOfKind: withReuseIdentifier: forIndexPath:, чтобы извлечь из очереди многоразовый вид верхнего или нижнего колонтитула.

6. Наконец, необходимо убедиться, что размер видов для верхних и нижних колонтитулов задается путем присваивания соответствующих значений свойствам headerReferenceSize и footerReferenceSize макетного объекта, отвечающего за последовательную компоновку.

Данный текст является ознакомительным фрагментом.



Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

Решение

Из книги автора

Решение Воспользуйтесь методом dataWithJSONObject: options: error: класса


Решение

Из книги автора

Решение Воспользуйтесь методом JSONObjectWithData: options: error: класса


Решение

Из книги автора

Решение Внедрите в ваше приложение фреймворк Social и воспользуйтесь классом SLComposeViewController для обеспечения социального обмена сообщениями, например


Решение

Из книги автора

Решение Воспользуйтесь классом NSXMLParser.


Решение

Из книги автора

Решение Используйте метод экземпляра URLsForDirectory: inDomains:, относящийся к классу


Решение

Из книги автора

Решение Все классы Cocoa, обеспечивающие сохранение информации, например NSString, UIImage и NSData, предоставляют методы экземпляра, позволяющие сохранять данные на диске по заданному


Решение

Из книги автора

Решение Пользуйтесь методом экземпляра createDirectoryAtPath: withIntermediateDirectories: attributes: error:, относящимся к классу NSFileManager, как показано далее:— (BOOL) application:(UIApplication *)applicationdidFinishLaunchingWithOptions:(NSDictionary *)launchOptions{NSFileManager *fileManager = [[NSFileManager alloc] init];NSString *tempDir = NSTemporaryDirectory();NSString *imagesDir = [tempDir


Решение

Из книги автора

Решение Используйте метод экземпляра contentsOfDirectoryAtPath: error:, относящийся к классу NSFileManager, как показано далее. В данном примере мы перечисляем все файлы, каталоги и символьные ссылки, расположенные в каталоге пакета с


Решение

Из книги автора

Решение Используйте один из двух методов экземпляра, removeItemAtPath: error: или removeItemAtURL: error:, относящихся к классу NSFileManager. Первый метод принимает путь как строку, а второй — как


Решение

Из книги автора

Решение Убедитесь, что ваш класс соответствует протоколу NSCoding, и реализуйте все необходимые методы данного протокола. Не волнуйтесь, я все подробно объясню в подразделе «Обсуждение» данного


Решение

Из книги автора

Решение Применяйте метод класса isSourceTypeAvailable:, относящийся к классу UIImagePickerController, со значением UIImagePickerControllerSourceTypeCamera следующим образом:— (BOOL) isCameraAvailable{return [UIImagePickerController


Решение

Из книги автора

Решение Инстанцируйте объект типа UIImagePickerController и представьте его пользователю как модальный вид в актуальном контроллере вида. Вот объявление этого контроллера


Решение

Из книги автора

Решение Воспользуйтесь объектом UIImagePickerController с источником типа UIImagePickerControllerSourceTypeCamera и медийной информацией типа kUTTypeMovie:— (void)viewDidAppear:(BOOL)animated{[super viewDidAppear: animated];static BOOL beenHereBefore = NO;if (beenHereBefore){/* Отображаем элемент для выбора даты только после того, как вызываетсяметод


Решение

Из книги автора

Решение Воспользуйтесь процедурой UIImageWriteToSavedPhotosAlbum:— (void) imageWasSavedSuccessfully:(UIImage *)paramImagedidFinishSavingWithError:(NSError *)paramErrorcontextInfo:(void *)paramContextInfo{if (paramError == nil){NSLog(@"Image was saved successfully.");} else {NSLog(@"An error happened while saving the


Решение

Из книги автора

Решение Следует обеспечить обработку ошибок соединения в блоковых объектах, передаваемых вашим объектам


Решение

Из книги автора

Решение Добавьте в главный файл. plist приложения ключ UIApplicationExitsOnSuspend и задайте ему значение true:<# Некоторые ключи и значения #><key>UIApplicationExitsOnSuspend</key><true/><# Остальные ключи и