- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight
這是 UIImage 的一個實例方法,它的功能是創建一個內容可拉伸,而邊角不拉伸的圖片,需要兩個參數,第一個是左邊不拉伸區域的寬度,第二個參數是上面不拉伸的高度。
根據設置的寬度和高度,將接下來的一個像素進行左右擴展和上下拉伸。
注意:可拉伸的范圍都是距離leftCapWidth后的1豎排像素,和距離topCapHeight后的1橫排像素。
參數的意義是:如果參數分別為10和5時,表示圖片左邊10個像素,上邊5個像素,不會被拉伸;而 X 坐標為11的一個像素會被橫向平鋪,Y 坐標為6的一個像素會被縱向平鋪。
注意:只是對一個像素進行平鋪到一定寬高,而圖像后面的剩余像素也不會被拉伸。
1 UIImage *img=[UIImage imageNamed:@"bubbleSelf.png"]; 2 img=[img stretchableImageWithLeftCapWidth:15 topCapHeight:12]; 3 UIImageView *imgV=[[UIImageView alloc]initWithImage:img]; 4 [imgV setFrame:CGRectMake(10, 10, 200, 200)]; 5 [self. view addSubview:imgV];
效果如下(左邊為使用 stretchableImageWithLeftCapWidth 方法產生的效果,右邊為原圖):