你好,歡迎來到IOS教程網

 Ios教程網 >> IOS使用技巧 >> IOS技巧綜合 >> 圖片的簡單拉伸操作

圖片的簡單拉伸操作

編輯:IOS技巧綜合
[摘要]本文是對圖片的簡單拉伸操作的講解,對學習IOS蘋果軟件開發有所幫助,與大家分享。

初始圖片尺寸大小為 25 * 28 pixels

現在我們在根試圖上創建兩個button

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];

button.frame = CGRectMake(50, 100, 25, 28);

[button setBackgroundImage:[UIImage imageNamed:@"btn.png"] forState:UIControlStateNormal];

[self.view addSubview:button];

UIButton *button1 = [UIButton buttonWithType:UIButtonTypeCustom];

button1.frame = CGRectMake(50, 200, 200, 28);

UIImage *image = [UIImage imageNamed:@"btn.png"];

[button1 setBackgroundImage:image forState:UIControlStateNormal];

[self.view addSubview:button1];

沒做拉伸處理前圖片效果

在iOS 5.0中,UIImage有一個新方法可以處理圖片的拉伸問題

-(UIImage*)resizableImageWithCapInsets:(UIEdgeInsets)capInsets

CGFloatleft= 12;//左端寬度

CGFloatright= 12;//右端寬度

UIEdgeInsetsinsets=UIEdgeInsetsMake(0,left,0,right);

//伸縮後重新賦值

UIImage *new = [image resizableImageWithCapInsets:insets];

[button1 setBackgroundImage:new forState:UIControlStateNormal];

[self.view addSubview:button1];

在iOS6.0中,UIImage又提供了一個方法處理圖片拉伸

-(UIImage*)resizableImageWithCapInsets:(UIEdgeInsets)capInsetsresizingMode:(UIImageResizingMode)resizingMode

對比iOS5.0中的方法,只多了一個UIImageResizingMode參數,用來指定拉伸的模式:

UIImageResizingModeStretch:拉伸模式,通過拉伸UIEdgeInsets指定的矩形區域來填充圖片

UIImageResizingModeTile:平鋪模式,通過重復顯示UIEdgeInsets指定的矩形區域來填充圖片

CGFloatleft= 12;//左端寬度

CGFloatright= 12;//右端寬度

UIEdgeInsetsinsets=UIEdgeInsetsMake(0,left,0,right);

//伸縮後重新賦值

UIImage *new = [image resizableImageWithCapInsets:insets resizingMode:UIImageResizingModeStretch];

[button1 setBackgroundImage:new forState:UIControlStateNormal];

[self.view addSubview:button1];

下面是拉伸過的圖片

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved