UICollectionViewCell

时间:2016-08-09 05:47:13

标签: ios objective-c iphone uiviewcontroller uicollectionviewcell

我正在以编程方式在目标C中创建一个应用程序。我有一个UICollectionView与一些饼图,条形图,表视图和一些视图。所以我所做的是使用饼图,条形图和带有模型数据的tableviews创建单独的viewcontrollers。加载collectionview单元格时,我会获取与单元格对应的Viewcontroller的截图,并将其保存在缓存中。基本上当第一次加载单元格时,初始化视图控制器,拍摄屏幕截图并保存在缓存中。我面临的问题是,自从初始化视图控制器并进行截屏后第一次滚动时出现波动,但后来它变得平滑,因为它从缓存中获取图像。当用户刷新时我清除缓存并再次重复该过程(不稳定滚动的主要原因是主线程被初始化ViewController中断)更好的想法来解决我的问题?下面是拍摄screenShot时的代码

[[NSFileManager defaultManager] createDirectoryAtPath:snapURLPortrait.path withIntermediateDirectories:YES attributes:nil error:&error1];

   //Directory Created Successfully.

  UIGraphicsBeginImageContextWithOptions(imageSize, NO, [UIScreen mainScreen].scale);
  [imageView.layer renderInContext:UIGraphicsGetCurrentContext()];
  UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
   UIGraphicsEndImageContext();

  NSData *pngData = UIImagePNGRepresentation(image);

Imageview是一个UIView,imageSize的大小我想把Image作为截图

注意:我尝试使用UICollectioViewCell内部的UIViewControllers而不是屏幕截图我一直都是波动的滚动,至少在我开始的时候我只是起伏不定。

0 个答案:

没有答案