Главная » iPhone » Масштабирование и размещение iPhone

0

Когда изображение добавляется к составному виду, его можно масштабировать и/или поместить поверх других уровней несколькими способами, uicompositeimageview поддерживает две дополнительных версии метода addimage, каждая из которых принимает исходный и целевой фрейм для масштабирования и размещения. Объект изображения сравнивает эти два фрейма и осуществляет те изменения, которые вызваны выявленными различиями:

CGRect src, dest; src.origin.х = 100; src.origin.у = 50; src.size.width = 320; src.size.height = 480; dest.origin.x = 80; dest.origin.у = 120; dest.size.width = 160; dest.size.height = 120;

[ compositeView addimage:

[ Ullmage applicationlmageNamed: ©"overlay.png" ] toRect: dest fromRect: src

Заданный пример создает два фрейма: src и dest. Структура src содержит изначальный размер изображения (320×480) и координаты для использования в рамках исходного изображения (100×50). Все, что находится левее или выше этих координат, будет обрезано. Координаты, предоставленные структурой dest, обозначают левый верхний угол составного вида, в который будет вставлено новое изображение.

Указывая различные размеры фреймов между структурами src и dest, вы можете добиться автоматического изменения размеров изображения.

Для выполнения операции, описанной в предыдущем разделе, наряду с масштабированием и размещением в одном методе, существует другая версия addimage. Она объединяет все четыре входных аргумента, позволяя вам мае- штабировать и размещать новое изображение одновременно с изменением его затененности и яркости:

[ compositeView addlmage:

[ Ullmage applicationlmageNamed: @"overlay.png" ] toRect: dest f romRect: s rc operation: 2 fraction: 0.35

I;

Приведенный пример загружает изображение overlay.png из программной папки приложения. Структуры CGRect указывают составному виду вставить изображение, начиная с точки (100, 50), в составной вид в точке координат (80, 20). Кроме того, составному виду указывается сделать новый уровень непрозрачным на 35%.

К составному изображению можно добавить любое количество уровней. После того как составное изображение будет сформировано, оно может быть добавлено к существующему объекту uiview: [ mainView addSubview: compositeView ];

Источник: Здзиарски Дж. iPhone. Разработка приложений с открытым кодом: Пер„с англ. — 2-е изд., перераб. и доп. — СПб.: БХВ-Петербург, 2009. — 368 е.: ил.

По теме:

  • Комментарии