你好,歡迎來到IOS教程網

 Ios教程網 >> IOS使用技巧 >> IOS技巧綜合 >> UIImage學習筆記

UIImage學習筆記

編輯:IOS技巧綜合
[摘要]本文是對UIImage學習筆記的講解,對學習IOS蘋果軟件開發有所幫助,與大家分享。
UIImage是什麼
用來管理APP裡的圖片資源,可以用來表示設備支持的圖片資源,不僅僅是jpg和png。 UIImage是immutable的,因此也是線程安全的。 iOS支持的所有的圖片格式
鏈接 不過,對於gif格式,只能展示第一幀。需要把gif分成若干幀,分別展示。 iOS本身的圖片緩存系統
iOS本身有一個圖像緩存系統。系統在內存不夠使,會清除緩存中的一些內容。
使用init(named:in:compatibleWith:)方法生成的image被加入到了系統緩存中去。因此適合於創建頻繁使用的圖片。這個方法在iOS9以後是線程安全的。
使用imageWithContentsOfFile:的方法創建的image沒有被加入系統緩存中去,每次調用都會重新載入圖片。 如何比較兩張圖片的數據是否一致。
由於圖像存在緩存系統,因此唯一可以比較圖片數據是否相同的方法是isEqual(_:)方法,這個方法比較真實的圖片數據。 從UIImage獲取圖像的其他表示方法
  • cgImage屬性,在Core Graphics框架內。 ciImage屬性,在Core Image框架內 UIImagePNGRepresentation(_:), png格式的數據 UIImageJPEGRepresentation(_:_:), jpg格式的數據
圖片的方向 鏈接 圖片的size
以point度量的圖片的大小 圖片的scale
物理像素和邏輯像素的比值。size*scale就是以像素度量的圖片大小。

展示一系列圖片
UIImage可以展示一些列圖片,得到類似gif的圖片效果。這些圖片應該有相同的size和scale

  • 通過UIImage數組生成
class func animatedImage(with images: [UIImage], duration: TimeInterval) -> UIImage?

class func animatedResizableImageNamed(_ name: String, capInsets: UIEdgeInsets, duration: TimeInterval) -> UIImage?
    通過路徑生成
class func animatedImageNamed(_ name: String, duration: TimeInterval) -> UIImage?
class func animatedResizableImageNamed(_ name: String, capInsets: UIEdgeInsets, resizingMode: UIImageResizingMode, duration: TimeInterval) -> UIImage?

其中,name是圖片路徑的前綴。

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved