?進(jìn)入新公司的第一個(gè)測(cè)試我能力的項(xiàng)目,就是做一個(gè)仿微信聊天界面的APP,其中有一個(gè)重要的考查點(diǎn)就是氣泡效果,需要?dú)馀荽笮∧苓m應(yīng)文字或者圖片、文件的顯示區(qū)域。當(dāng)時(shí)想到了用代碼和Image Slicing兩種方式實(shí)現(xiàn),和大家分享一下。
一、代碼實(shí)現(xiàn)圖片縮放
對(duì)于拉伸的方式,有以下兩種:
*IUIImageResizingModeStretch:拉伸模式,通過拉伸UIEdgeInsets指定的矩形區(qū)域是我們要保護(hù)的區(qū)域,也就是不被拉伸的區(qū)域
*UIImageResizingModeTile:平鋪模式,通過重復(fù)顯示UIEdgeInsets指定的矩形區(qū)域是要保護(hù)的區(qū)域,也就是不被重復(fù)顯示的區(qū)域
二、Image Slicing可視化縮放
何為Image Slicing呢?,其實(shí)就相當(dāng)于一個(gè)可視化的resizableImageWithCapInsets,可以用于指定在圖片縮放時(shí)用來填充的像素。我們可以在Xcode的Assets.xcassets目錄中選擇要slicing的圖片,點(diǎn)擊圖片界面右下方的Show Slicing按鈕,在想要設(shè)定切片的圖片上點(diǎn)擊Start Slicing,將出現(xiàn)左中右(或者上中下)三條可以拖動(dòng)的指示線,通過拖動(dòng)它們來設(shè)定實(shí)際的縮放范圍。
在左側(cè)線(或者上方線)和中間線之間的像素將在縮放時(shí)被填充,在中間線和右側(cè)線(或者下方線)之間的像素將被隱藏。
三、總結(jié)
代碼的方法適用于處理網(wǎng)絡(luò)上的圖片,以及image中大量同一類需要處理的圖片,提高效率;
Image Slicing方法適用于單個(gè)圖片,可視化,提高可操作性。