2012-11-15 94 views
0

我試圖創建一個應用程序,我可以在一個視圖上的特定點(針對每個圖像確定)繪製大量圖片。我有一個座標,我需要繪製圖片,寬度和高度 例如:UIView上的圖像繪製

我有20億jpeg的圖像。對於每個圖像我有一個特定的原點和大小。 在1秒內,我需要在特定點上繪製20-50幅圖像。

我已經tryid解決,在未來的道路:

UIGraphicsBeginImageContextWithOptions(self.previewScreen.bounds.size, YES, 0); 
[self.previewScreen.image drawAtPoint:CGPointMake(0, 0)]; 
[image drawAtPoint:CGPointMake(nRect.left, nRect.top)]; 
UIImage *imagew = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 
[self.previewScreen setImage:imagew]; 

,但這種解決方案我有顯示圖像和大CPU佔用率非常大的延遲

WBR

馬克西姆Tartachnik

回答

0

所以我想你的問題是,如何使它更快?

爲什麼使用ImageContext繪製圖像?您可以將包含您的圖像的UIImageView添加到您的主視圖中,並根據需要定位它們。

+0

如果我理解的很清楚,我需要在新的映像中向我的根'UIImageView'添加新的'UIImageView'。正如我以前說過,我有很多圖像,如果對於每個圖像,我會創建新的'UIImageView',這可能會導致內存崩潰 – kroumvud

+0

如果您的圖像不會超過內存限制,那麼您的圖像也不會用圖像瀏覽。 UIImageViews只是圖像的容器視圖。在你的代碼中,你不使用UIImageView而是UIImage。 – jimpic

+0

對不起,如果我不解釋我的代碼, 'self.previewScreen' - 這是屬性 '@property(nonatomic,retain)IBOutlet UIImageView * previewScreen;' – kroumvud