大綱:
創(chuàng)建View
View的基本設(shè)置(位置,大小,背景顏色,透明度,Center,Bound,Tag)
設(shè)置用戶交互
View的相互嵌套
多個View的層次切換(置頂,置底,獲取所有子控件,獲取父控件,隱藏視圖,插入視圖,交換視圖)
開發(fā)小技巧
一、創(chuàng)建View
//創(chuàng)建View
UIView * view = [[UIView alloc]init];
二、View的基本設(shè)置(位置,大小,背景顏色,透明度,Center,Bound,Tag)
//設(shè)置位置和大小
view.frame = CGRectMake(0, 0, 320, 480);
//設(shè)置背景顏色
[view setBackgroundColor:[UIColor yellowColor]];
//設(shè)置透明度
[view setAlpha:0.5];
//設(shè)置視圖的中心點的位置(放在誰上面,誰就是參考物!)
view.center = CGPointMake(0, 200);
//只可以設(shè)置大小,不管位置
view.bounds = CGRectMake(0, 0, 320, 480);
//設(shè)置Tag
[view setTag:100];
三、設(shè)置用戶交互
//控件是否響應(yīng)用戶的交互 userInteractionEnabled
//注意!子控件的是否可以交互,是跟父控件一致的(如果父控件沒有開啟用戶交互,那在其上的子控件都沒有交互的能力)
//UILabel 和 UIImageView 默認是不響應(yīng)
//UIView 和 UIButton 默認是響應(yīng)
button.userInteractionEnabled = YES;
四、View的相互嵌套
//UIView的相互嵌套
//方便統(tǒng)一管理 subView
//subView 的坐標是相對 superView
[view addSubview:button];
五、多個View的層次切換(置頂,置底,獲取所有子控件,獲取父控件,隱藏視圖,插入視圖,交換視圖)
//默認 越早加入的,層次越低
[self.window addSubview:view1];
[self.window addSubview:view2];
[self.window addSubview:view3];
//將View放到“當前”的最頂層
[self.window bringSubviewToFront:view1];
//將View放到“當前”的最底層
[self.window sendSubviewToBack:view1];
//獲取一個View中的所有subViews
NSArray * subArr = [self.window subviews];
//獲取superView
UIView * superView = self.window.superview;
//隱藏一個視圖
view3.hidden = NO;
//插入視圖
//放在xxView的上面
[self.window insertSubview:view4 aboveSubview:view3];
//View的視圖Index從0開始(最底層)
[self.window insertSubview:view4 atIndex:1];
//放在xxView的下面
[self.window insertSubview:view4 belowSubview:view2];
//交換視圖
[self.window exchangeSubviewAtIndex:0 withSubviewAtIndex:1];
六、開發(fā)小技巧
//善用View的嵌套,方便統(tǒng)一管理加在其之上的所有視圖
//(隱藏視圖)跟(透明度==0)是有區(qū)別的,慎用(視圖隱藏后,可以操作后面的視圖,可是透明的話就不一定)
//子控件的用戶交互性是跟父控件一致,小心使用
//注意,UIView不能作為屬性使用,會出問題??!
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。