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內部會...