2014-09-02 3 views
0

Попытка нарисовать анимированную UIImage как так:Как нарисовать анимированный UIImage?

// Image 
    UIImage *image = [UIImage animatedImageNamed:@"progress_" duration:0.5f]; 
    CGPoint imagePoint = CGPointMake(self.center.x - roundf(image.size.width/2.0f), self.center.y - roundf(image.size.height/2.0f) - boxHeight/8.0f); 
    [image drawAtPoint:imagePoint]; 

Это не работает, я вижу только первый кадр. Я пробовал один и тот же код, но назначил это изображение UIImageView, и он работает.

Итак, как я могу заставить это изображение работать? Или как рисовать UIImageView внутри rect?

ответ

0

Вы действительно не должны нарисовать UIImage или UIImageView по своему усмотрению, почему? Вам нужно добавить свой UIImageView в качестве подзаголовка и позволить ему нарисовать себя, вот как все работает в целом.

+0

Я пытаюсь сделать HUD, используя пример MBProgressHUD. – katit

+0

В принципе, вы переопределяете '-drawRect:', когда есть какой-то фактический пользовательский чертеж, например, причудливые индикаторы, фигуры и т. Д. Обычно это связано с захватом графического контекста и выполнением некоторых действий с QuartzCore. MBProgressHUD - хороший пример, поскольку они не используют изображения для своей графики. Однако на самом деле проще полагаться на иерархию представлений при работе с такими вещами, как отображение изображений - вы можете использовать возможности Core Animation и Auto Layout. – Nicky

Смежные вопросы