iOS 7.0 UITextView gettings terribly slow after adding images to it
缩放图像后,textvIEw渲染运行正常,没有任何延迟.textvIEw的属性文本存储在核心数据中.在运行的应用程序会话中,textvIEw正确显示图像.即使在核心数据中保存属性文本并检索它再次显示在textvIEw上,图像看起来很好.但是在杀死应用程序并再次运行应用程序之后.图像被放大到2倍大小.在缩放图像时我使用了以下功能并使用[[UIScreen bounds] scale]来维护图像质量.
- (UIImage *)imageWithImage:(UIImage *)image scaledToSize:(CGSize)newSize { UIGraphicsBeginImageContextWithOptions(newSize,NO,[UIScreen mainScreen].scale); [image drawInRect:CGRectMake(0,newSize.wIDth,newSize.height)]; UIImage *newImage = UIGraphicsGetimageFromCurrentimageContext(); UIGraphicsEndImageContext(); return newImage;}
如果我将图像缩放到1.0,图像不会扩展,但图像质量非常差.
我认为问题出在哪里?
问题在于布局管理器.
我试过了什么
我已经尝试了子类化NSLayoutManager并覆盖了
– (voID)drawGlyphsForGlyphRange:(NSRange)glyphsToShow atPoint:(CGPoint)origin
我看到的是在运行应用程序的新会话时附件大小加倍.如果我尝试检查附件的大小并调整其大小.滞后开始再次出现.
我很快就遇到了这个问题.任何建议都会非常感激.
//Original Size that you want to storeCGSize imageSize = CGSizeMake(320.0f,320.0f);//Make the image 50% of the size for retinaif ([[UIScreen mainScreen] respondsToSelector:@selector(displaylinkWithTarget:selector:)] &&([UIScreen mainScreen].scale == 2.0)) { // Retina display imageSize = CGSizeMake(160.0f,160.0f);}UIImage * storeImage = [self imageWithImage:self.image scaledToSize:imageSize]//Todo: Store this image locally or whatever you want to do.总结
以上是内存溢出为你收集整理的ios7 – iOS 7 UITextView:重新打开应用程序后,nstextattachment的大小增加2倍全部内容,希望文章能够帮你解决ios7 – iOS 7 UITextView:重新打开应用程序后,nstextattachment的大小增加2倍所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)