iOS開發UI篇 transframe屬性(形變)

2021-09-08 10:15:37 字數 2212 閱讀 2175

ios開發ui篇—transframe屬性(形變)

1. transform屬性

在oc中,通過transform屬性可以修改物件的平移、縮放比例和旋轉角度

常用的建立transform結構體方法分兩大類

(1) 建立「基於控制項初始位置」的形變

cgaffinetransformmaketranslation(平移)

cgaffinetransformmakescale(縮放)

cgaffinetransformmakerotation(旋轉)

(2) 建立「基於transform引數」的形變

cgaffinetransformtranslate

cgaffinetransformscale

cgaffinetransformrotate

補充:在oc中,所有跟角度相關的數值,都是弧度值,180° = m_pi

正數表示順時針旋轉

負數表示逆時針旋轉

2.**示例

1//2

01-練習使用按鈕的frame和center屬性4//

5//6//

7//89

#import

"yyviewcontroller.h"10

11//

私有擴充套件

12@inte***ce

yyviewcontroller ()

1314 @property(nonatomic,weak)iboutlet uibutton *headimageview;

15@end

1617

@implementation

yyviewcontroller

1819

//列舉型別,從1開始

20//

列舉型別有乙個很大的作用,就是用來代替程式中的魔法數字

21 typedef enum

22btntag;

2829

//viewdidload是檢視載入完成後呼叫的方法,通常在此方法中執行檢視控制器的初始化工作

30 - (void

)viewdidload

31171

172//

控制方向的多個按鈕呼叫同乙個方法

173 -(void)click:(uibutton *)button

174198

199//

self.headimageview.frame=frame;

200201

//首尾式設定動畫效果

202[uiview beginanimations:nil context:nil];

203 self.headimageview.center=center;

204//

設定時間

205 [uiview setanimationduration:2.0

];206

[uiview commitanimations];

207 nslog(@"

移動!"

);208

209}

210 -(void)zoom:(uibutton *)btn

211218

else

219223

224//

設定首尾動畫

225[uiview beginanimations:nil context:nil];

226 self.headimageview.bounds=bounds;

227 [uiview setanimationduration:2.0

];228

[uiview commitanimations];

229}

230231 -(void)rotate:(uibutton *)rotate

232247

else

248252

253}

254@end

實現效果:

viewdidload是檢視載入完成後呼叫的方法,通常在此方法中執行檢視控制器的初始化工作

在viewdidload方法中,一定不要忘記呼叫父類的方法實現

[super viewdidload];

iOS開發UI篇 UIScrollView控制項介紹

ios開發ui篇 uiscrollview控制項介紹 一 知識點簡單介紹 1.uiscrollview控制項是什麼?1 移動裝置的螢幕 大 小是極其有限的,因此直接展 示在 使用者眼前的內容也相當有限 2 當展 示的內容較多,超出 乙個螢幕時,使用者可通過滾動 手勢來檢視螢幕以外的內容 3 普通的u...

iOS開發UI技巧篇 UILable

1 ios7 之後 uilable顯示多行 這個在某些場景下會出問題,沒找到原因 uilabel lable uilabel alloc init lable.text 當您有新中獎訂單,啟動程式時通過動畫提醒您。為避免過於頻繁,高頻彩不會提醒。self.tableview addsubview l...

iOS開發UI篇 CALayer簡介

ios開發ui篇 calayer簡介 一 簡單介紹 在ios中,你能看得見摸得著的東西基本上都是uiview,比如乙個按鈕 乙個文字標籤 乙個文字輸入框 乙個圖示等等,這些都是uiview。其實uiview之所以能顯示在螢幕上,完全是因為它內部的乙個圖層,在建立uiview物件時,uiview內部會...