подслой с неконечной позицией [inf inf]
Я использую третью библиотеку CocoaPods, написанную на Objective-C, чтобы сделать скриншот UITextView. Это было нормально для iOS 8, но после изменения синтаксиса для iOS 9 и Swift 2 выдает ошибку:
Завершение приложения из-за неисследованного исключения «CALayerInvalidGeometry», причина: «подслой с неконечной позицией [inf inf]»
Вот код из библиотеки:
- (UIImage *)screenshotForCroppingRect:(CGRect)croppingRect
{
UIGraphicsBeginImageContextWithOptions(croppingRect.size, NO, [UIScreen mainScreen].scale);
// Create a graphics context and translate it the view we want to crop so
// that even in grabbing (0,0), that origin point now represents the actual
// cropping origin desired:
CGContextRef context = UIGraphicsGetCurrentContext();
if (context == NULL) return nil;
NSLog(@"hiii :%f" , croppingRect.size.width);
CGContextTranslateCTM(context, -croppingRect.origin.x, -croppingRect.origin.y);
[self layoutIfNeeded];
[self.layer renderInContext:context];
UIImage *screenshotImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return screenshotImage;
}
Проблема в этой строке:
[self.layer renderInContext:context];
Я понимаю, что это потому, что я пытаюсь сделать снимок UIView, который содержит UIScrollView. Если я удалю подпредставление UIScrollView, ошибка исчезнет.
Так что это значит?
подслой с неконечной позицией [inf inf]
У кого есть такая же проблема и как вы ее решили?