成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

iOS圖片拉伸:resizableImageWithCapInsets

移動開發 iOS
今天做了一個溫度計的應用,需要一個圖,能夠根據輸入的數據將溫度計里面的紅色圖片拉伸。為了達到這個效果,使用了iOS5的函數:resizableImageCapInsets:(UIEdgeInsets)Insets。最近終于申請到蘋果開發者賬號!搞的好煩啊!給大家帶福利了!

今天做了一個溫度計的應用,需要一個圖,能夠根據輸入的數據將溫度計里面的紅色圖片拉伸。為了達到這個效果,使用了iOS5的函數:resizableImageCapInsets:(UIEdgeInsets)Insets。

最近終于申請到蘋果開發者賬號!搞的好煩啊!給大家帶福利了!

想真機調試,上架應用,將IPA打包給朋友用,或者申請開發者賬號的請聯系我!

真機調試有99個限制!

其中Insets這個參數的格式是(top,left,bottom,right),從上、左、下、右分別在圖片上畫了一道線,這樣就給一個圖片加了一個框。只有在框里面的部分才會被拉伸,而框外面的部分則不會改變。比如(20,5,10,5),意思是下圖矩形里面的部分可以被拉伸,而其余部分不變。

據說stretchableImageWithLeftCapWidth:topCapHeight這個函數也能夠實現,但是在iOS5里面建議不要使用這個函數。效果如下圖:

當修改了數據之后,變成這樣:

下面來看如何實現。

溫度計共由三張圖組成:

背景圖ThermometerBackground.png:

刻度圖ThermometerCalibration:

里面的溶液Calibration:

首先將背景圖加入superview中,再將刻度圖和溶液圖加入背景圖中:(為簡化起見,一些不必要的代碼已經省略)

  1. //將背景圖加入superview  
  2. UIImageView *thermometerBackground = [[UIImageView alloc] initWithFrame:THERMOMETER_FRAME];  
  3. [thermometerBackground setImage:[UIImage imageNamed:@"ThermometerBackground.png"]];  
  4. [self.view addSubview:self.thermometerBackground];  
  5. //將溶液圖加入背景圖  
  6. UIImageView *thermometer = [[UIImageView alloc]init];  
  7. [self.thermometerBackground addSubview:self.thermometer];  
  8. //將刻度圖加入背景圖  
  9. UIImageView *thermometerCalibration = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"ThermometerCalibration.png"]];  
  10. [self.thermometerCalibration setFrame:CGRectMake(0, 10, thermometerBackground.frame.size.width, thermometerCalibration.image.size.height*thermometerBackground.frame.size.width/thermometerCalibration.frame.size.width)]; 
  1. [self.thermometerBackground addSubview:thermometerCalibration];  

然后,根據度數生成對應高度的image

  1. UIImage* image = [UIImage imageNamed:@"Thermometer.png"];  
  2. UIEdgeInsets insets = UIEdgeInsetsMake(20, 0, 25, 0);  
  3. image = [image resizableImageWithCapInsets:insets];  
  4. int top = 10.00+(38.00-temperature)*20.00;  
  5. [self.thermometer setFrame:CGRectMake(0, top, self.thermometerBackground.frame.size.width, self.thermometerBackground.frame.size.height-top)];  
  1. [self.thermometer setImage:image];  

在這里,top這個變量就代表了根據度數計算出的溶液的高度。

這樣,當改變溫度temperature的大小時,只要在viewWillAppear里調用這段代碼,就能夠動態生成溫度計圖片了。

責任編輯:閆佳明 來源: apkbus
相關推薦

2013-08-21 11:31:21

iPhone圖片方法

2021-12-29 06:24:16

AI審稿人工智能

2015-09-09 11:08:48

qq空間可拉伸頭部

2023-04-27 08:42:50

效果

2018-05-16 07:41:29

圖片代碼資源

2015-08-10 09:50:21

ios圖片文本

2015-01-20 17:15:55

iOS源碼滾動視圖

2010-07-26 15:12:20

坐標變換

2011-05-12 11:28:20

按比例縮放

2022-05-26 00:06:19

CSSFirefoxElectron

2011-09-19 15:42:33

TwitteriOS5

2023-04-25 17:24:31

veImageXiOSSDK

2011-06-02 10:12:54

TwitteriOS 5蘋果

2015-04-23 10:15:53

AndroidiOS圖片

2015-04-23 10:52:53

AndroidiOS圖片

2013-10-16 16:58:17

iOS優化緩存優化

2013-07-29 11:19:16

iOS開發iOS開發學習FMDB更新二進制圖片

2011-08-18 17:20:21

IOS開發TableView圖片

2011-10-13 15:59:55

2011-02-21 16:11:45

C#.NET.NET framew
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 激情小说综合网 | 日韩三级一区 | 欧美一区二区三区久久精品 | 欧美一级三级在线观看 | 午夜精品久久久久久久久久久久 | 美女久久久久久久 | 美女三区| 日韩中文在线视频 | 黄网站涩免费蜜桃网站 | 亚洲电影专区 | 久久精品亚洲一区二区三区浴池 | 日日拍夜夜 | 91久久久www播放日本观看 | 男人的天堂在线视频 | 一区二区三区国产精品 | 亚洲欧洲精品成人久久奇米网 | 中文字幕免费在线观看 | 日本欧美大片 | 日韩一级| 国产欧美在线一区 | 91视频精选 | 日韩午夜网站 | 特级黄色毛片 | 伊人精品久久久久77777 | 国产精品久久久久久久久久久久久久 | 国产香蕉视频在线播放 | 国产在线精品区 | 91九色porny首页最多播放 | 国精品一区二区 | 久久久久国产 | 国产一区二区免费 | 麻豆av在线免费观看 | 91xx在线观看 | 91视视频在线观看入口直接观看 | 亚洲精品视频在线观看免费 | 黄色一级电影在线观看 | 福利av在线 | 精品欧美一区二区三区久久久 | 日日日日日日bbbbb视频 | 一二三四在线视频观看社区 | 91就要激情 |