iPhone UIView Размеры и рисование изображений - PullRequest
0 голосов
/ 19 июня 2010

Я занимаюсь разработкой пользовательского компонента UIView. Это простой маленький секундомер с графикой PNG для всех цифр. Вокруг много учебных пособий, поэтому я сам разбираюсь в этом. Но у меня есть два вопроса:

Прежде всего, компонент всегда будет иметь определенный размер (141 x 32), но я не знаю, как указать это из подкласса UIView. Свойство frame хочет, чтобы я определял не только ширину и высоту, но также координаты x и y. Конечно, я не буду знать позицию, пока компонент не будет помещен в какое-либо родительское представление. Как мне это сделать?

Во-вторых, для рисования всех цифровых изображений внутри компонента я не знаю, должен ли я создавать объекты UIImageView и размещать их как дочерние элементы, или мне просто нужно рисовать изображения непосредственно в методе drawRect представления. Секундомер отображает данные часа: минуты: секунды.тента, поэтому по крайней мере одно изображение будет обновляться десять раз в секунду, а одно изображение обновляется каждую секунду. Я мог бы легко переназначить свойство «image» UIImageView или просто перерисовать все, используя UIImages напрямую.

Какие соображения следует учитывать при принятии решения о том, какую стратегию рисования использовать? Есть ли случаи, когда один выбор лучше другого?

EDIT:

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

1 Ответ

0 голосов
/ 19 июня 2010

Просто поместите 0,0 для x, y позиции в кадре изначально. Источник будет установлен в фактическое положение, когда вы добавите его в свой вид.

...