7--UIView

大綱:

創(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ù)。

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,813評論 25 708
  • 初識iOS APP開發(fā)#### 在iOS APP開發(fā)中, main函數(shù)仍是程序的入口和出口, 但main函數(shù)不需要...
    DeanYan閱讀 6,236評論 0 3
  • 《裕語言》速成開發(fā)手冊3.0 官方用戶交流:iApp開發(fā)交流(1) 239547050iApp開發(fā)交流(2) 10...
    葉染柒丶閱讀 27,557評論 5 19