對圖片進(jìn)行拉伸
+ (UIImage *)resizableImage:(NSString *)name{
UIImage *normal = [UIImage imageNamed:name];
// 圖形處理 拉伸圖片
CGFloat w = normal.size.width * 0.5;
CGFloat h = normal.size.height * 0.5;
// 只對中間那個(gè)框框進(jìn)行拉伸
return [normal resizableImageWithCapInsets:UIEdgeInsetsMake(h, w, h, w)];
}
今天在弄聊天的時(shí)候氣泡問題,需要對聊天氣泡進(jìn)行拉伸進(jìn),用到上面這個(gè)方法。但是發(fā)現(xiàn)圖片一直發(fā)生形變,找了一會兒終于找到問題所在,在此記錄一下:
- 在retina屏幕下程序會自動尋找@2x圖片,如果沒有后綴為@2x圖片,就會自動拉伸非@2x圖片,所以盡量將你的圖片都帶上@2x后綴,這樣就不會造成在使用resizableImageWithCapInsets時(shí)因無法找到@2x圖片對原圖進(jìn)行拉伸進(jìn)而再使用resizableImageWithCapInsets進(jìn)行平鋪時(shí)造成圖片變形問題。