IOS 調(diào)整內(nèi)存中的圖片大小實例詳解
IOS 調(diào)整內(nèi)存中的圖片大小實例詳解
在從網(wǎng)路download圖片,或者從相冊讀取圖片的時候,如果ImageView的本身就是固定的300*200,那么載入2000*2000的圖片是很浪費內(nèi)存的。
2000*2000的內(nèi)存占用是2000*2000*4bit
以下兩個函數(shù)可以用來創(chuàng)建一個新的按照固定大小的圖片。簡單來說,就是Core Graphics來創(chuàng)建一個bitmap,然后生成一個圖片。
- (UIImage*)imageWithImage:(UIImage*)image scaledToSize:(CGSize)newSize; { UIGraphicsBeginImageContext( newSize ); [image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)]; UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return newImage; } -(UIImage*)imageWithImage:(UIImage *)image resizeFactor:(CGFloat)scale { CGSize originalSize = image.size; CGSize newSize = CGSizeMake(originalSize.width * scale, originalSize.height* scale); UIGraphicsBeginImageContext(newSize); [image drawInRect:CGRectMake(0,0,newSize.width, newSize.height)]; UIImage * newImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return newImage; }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
- IOS 常見內(nèi)存泄漏以及解決方案
- iOS通過逆向理解Block的內(nèi)存模型
- 詳解關(guān)于iOS內(nèi)存管理的規(guī)則思考
- 詳解iOS應(yīng)用開發(fā)中的ARC內(nèi)存管理方式
- IOS中內(nèi)存管理那些事
- 剖析iOS開發(fā)中Cocos2d-x的內(nèi)存管理相關(guān)操作
- 解析iOS內(nèi)存不足時的警告以及處理過程
- shell腳本監(jiān)控linux系統(tǒng)內(nèi)存使用情況的方法(不使用nagios監(jiān)控linux)
- iOS內(nèi)存錯誤EXC_BAD_ACCESS的解決方法
- 詳解使用Xcode7的Instruments檢測解決iOS內(nèi)存泄露(最新)
相關(guān)文章
iOS中關(guān)于UIWindow和statusbar的設(shè)置問題
最近在做開發(fā)時要做一個類似于UIAlertView的控件,做法是創(chuàng)建一個基于UIView的類,在里面進(jìn)行自定義控件的設(shè)置,為了盡量模仿UIAlertView,在這個類里面創(chuàng)建了一個新的UIWindow并將self顯示到這個window上2017-03-03IOS 貝塞爾曲線(UIBezierPath)屬性、方法整理
這篇文章主要介紹了IOS 貝塞爾曲線(UIBezierPath)屬性、方法的相關(guān)資料,這里整理了貝塞爾 曲線的基礎(chǔ)資料,對屬性及相應(yīng)的方法一一做了詳解,需要的朋友可以參考下2016-11-11關(guān)于iOS中屬性變量setter與getter方法的理解
這篇文章主要給大家介紹了關(guān)于iOS中屬性變量setter與getter方法的相關(guān)資料,文章介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-06-06iOS中UIAlertView3秒后消失的兩種實現(xiàn)方法
這篇文章主要介紹了iOS中UIAlertView3秒后消失的兩種實現(xiàn)方法,實現(xiàn)方法涉及到NSTimer和PerformSelector:withObject:afterDelay:方法的結(jié)合使用,需要的朋友可以參考下2017-12-12