Кажется, у меня есть некоторые проблемы с методом drawrect. Я рисую страницу PDF в виде, используя CGContextDrawPDFPage, а затем я хочу запустить анимацию UIView для фрейма представления после его загрузки. Однако, если я вызываю анимацию в конце метода drawrect, она вызывает прерывистую анимацию, потому что анимация проходит в середине своей продолжительности до того, как UIView действительно появится на экране (иногда через 2 секунды.
Я ищу способ проверить, закончил ли вид рисунок. Любые идеи или помощь будет высоко ценится?
Вот мой код ...
-(void)drawRect:(CGRect)inRect{
pageRef = [[PDFManager sharedManager] getLargePDFPageRefForPage:pageNumber];
if(pageRef) {
ctx = UIGraphicsGetCurrentContext();
CGContextTranslateCTM(ctx, 0.0, [self bounds].size.height);
CGContextScaleCTM(ctx, 1.0, -1.0);
CGContextConcatCTM(ctx, CGPDFPageGetDrawingTransform(pageRef, kCGPDFCropBox, [self bounds], 0, true));
CGContextSetInterpolationQuality(ctx, kCGInterpolationNone);
CGContextSetRenderingIntent(ctx, kCGRenderingIntentDefault);
CGContextDrawPDFPage(ctx, pageRef);
}
[self moveFrame];
}
-(void)moveFrame{
[UIView animateWithDuration:0.7 delay:0 options:UIViewAnimationOptionCurveEaseInOut animations:^{
self.frame = CGRectMake(0, 0, 500, 400);
} completion:^(BOOL finished) {
}];
}