2012-03-21 113 views
0

我正在構建一個有趣的UI過渡,需要我將任意視圖控制器細分爲片。我目前正在快照視圖並將結果圖像用作一堆CALayers的內容。很好用,除了iPhone 4(iOS 5.1)需要0.25-0.5秒才能進行快照,這使得用戶的體驗遠沒有流暢。我正在使用標準方法:如何加快UIView快照?

UIGraphicsBeginImageContextWithOptions(self.bounds.size, NO, [UIScreen mainScreen].scale); 
[self.layer renderInContext:UIGraphicsGetCurrentContext()]; 
UIImage *resultingImage = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 

是否有更快的方法來抓取快照?被快照的視圖通常會包含十幾個視圖和圖像,其中許多視圖和圖像具有透明度。

回答

0

您是否嘗試過在您的CALayer上啓用shouldRasterize?