簡體   English   中英

iOS:CAEmitter層和EmitterCell翻轉iOS 6上的圖像

[英]iOS: CAEmitter Layer and EmitterCell Flips Image on iOS 6

CAEmitterLayer一起CAEmitterLayer ,發現了一些很奇怪的東西。

我在左下角設置45度(指向右上角)的CAEmitterLayer ,並嘗試向右上角發射一些箭頭。

一切正常,除了我通過單元格的content屬性設置的圖像。

這是iOS 7設備上的原始圖像:

在此處輸入圖片說明

在iOS 6上運行時,它變成這樣:

在此處輸入圖片說明

有沒有人經歷過這種情況,你知道為什么會這樣嗎? 擁有兩組圖像並檢查設備是iOS 6還是iOS 7並相應地設置圖像,這對我來說不是問題,但出於好奇,我懇請我找出原因。 提前致謝。

我正在使用Xcode 5。

這是CAEmitterLayer中的正常行為。 與iOS的其余部分使用不同的坐標系。 由於它是源自MacOS的技術,因此其來源(0,0)位於左下方,而在iOS中,來源位於左上方。 當圖片被繪制時,會導致圖像翻轉。 CAEmitterLayer並非真正設計為使用這樣的圖像,主要用於不需要特定方向的粒子系統。

最簡單的解決方案是自己翻轉圖像,這樣當CAEmitterLayer再次翻轉圖像時,它將看起來像您想要的那樣。 這可能已在iOS7中進行了更改,因此您必須進行版本檢查並應用正確的圖像。

如果需要,也可以在代碼中翻轉它。 這是一個簡短的代碼:

UIImage *flippedPicture = [UIImage imageWithCGImage:picture.CGImage scale:1.0 orientation:UIImageOrientationLeftMirrored];

資料來源: http : //www.vigorouscoding.com/2013/02/particle-image-gets-mirrored-by-uikit-particle-system/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM