方式一:
//直接拉伸全局圖片:造成圖片嚴重失真
UIImage *image = [UIImage imageNamed:@"chat_send_nor"];
直接全部拉伸
方式二:iOS 6引入
局部保真,內部填充
//2.(1)保護圖片(上,左,下,右)部分寬度后【用剩余部分】平鋪式(ModeTile,默認)填充;
image = [image resizableImageWithCapInsets:UIEdgeInsetsMake(30, 35, 30, 40) resizingMode:UIImageResizingModeTile];
四周保真,內部平鋪式填充
//2.(2)保護圖片(上,左,下,右)部分寬度后【用剩余部分】拉伸式(ModeStretch)填充;
image = [image resizableImageWithCapInsets:UIEdgeInsetsMake(30, 35, 30, 40) resizingMode:UIImageResizingModeStretch];
四周保真,內部拉伸式填充
方式三:
//3.只給出(左,上)參數,右下參數系統自動計算。【用剩余部分】直接拉伸式(ModeStretch)填充,很古老的一種方式。
image = [image stretchableImageWithLeftCapWidth:35 topCapHeight:30];
1 X 1式填充
系統計算(右,下)參數的公式:
right: Width - left -1;
bottom: Height - top - 1;
剩余部分為:
width = Width - left - right = 1;
height = Height - top - bottom = 1
所以,才被稱為是 X 1式填充。
方式四:
通過Assets直接可視化設置
該方式實際上是方法二,但是為1 X 1式填充方式。