UI第一節(jié)課 創(chuàng)建視圖view和相關(guān)方法

創(chuàng)建一個UI view對象

創(chuàng)建一個UI對象
1.創(chuàng)建一個UI對象
UIView *view =[[UIView alloc] init];
2.設(shè)置它的frame,確定view的 坐標(biāo)大小
view.frame = CGRectMake(10,100,100,100);
3.設(shè)置背景顏色
view.backgroundColor = [UIColor redColor];
4.呈現(xiàn)view對象
[self.window addSubview:view];
或者
第一步和第二步合并:
UIView *view = [[UIView alloc] initWithFrame:CGRectMack:(10,100,100,100)];
CGRectMake后面的四個變量分別代表的是 x,y,寬,高的值
CGRectMake(<#CGFloat x#>, <#CGFloat y#>, <#CGFloat width#>, <#CGFloat height#>)

view
1.view(視圖):代表屏幕上的一個矩形區(qū)域
2.各種UI控件都是屬于view
3.iOS中所有能看到的內(nèi)容都是view或其子類


**frame 指的是視圖中的 坐標(biāo) 和 大小 **
1.frame是view的重要屬性,它決定了視圖的大小和位置
2.frame中包含origin(坐標(biāo)包含x,y)和size(包含width , height)
3.frame和后面的origin和size都是 結(jié)構(gòu)體
4.使用CGRectMake: 的方法來調(diào)用里面的值


center
1.center(中心點)也是view重要的屬性
2.center是結(jié)構(gòu)體,也包含 x 和 y
方法
center.x = frame.origin.x + frame.size.width/2; center.y = frame.origin.y + frame.size.height/2;
改變中心點的坐標(biāo),那么view的視圖也同樣改變,并重新找到改變后的中心點坐標(biāo),


bounds值
1.bounds(邊界)也是view的重要屬性,用于定義自己的邊界。它同frame?樣是?個CGRect結(jié)構(gòu)體變量。
2.當(dāng)一個view設(shè)置bounds時,會把自己當(dāng)成一個容器(可以在它自己的基礎(chǔ)上創(chuàng)建自己的子類),定義自己的邊界 以及 左上角的初始坐標(biāo)
bounds的值是在view設(shè)置時賦值的初始坐標(biāo)即表示bounds的原點,添加子視圖是會根據(jù)bounds原點計算frame,而非左上角的原點

例如

// 設(shè)置view的bounds的值
[view setBounds:CGRectMake(0,0,100,100)];
表示bounds的原點是以view的左上角為原點,

屏幕快照 2015-11-16 下午9.14.47.png

當(dāng)bounds的值為(50,50,100,100);則表示以view為原點,向左和向上同時移動50的點為原點 同樣,若bounds得為(-50,-50,100,100)則表示在view左上角的的坐標(biāo)向下和向右所確定的坐標(biāo)為原點向下添加子視圖

屏幕快照 2015-11-16 下午9.18.39.png

優(yōu)點
在后面在視圖中添加動畫時,可以不用改動視圖中的原點,直接改動bounds即可


UILabel
1.UILabel(標(biāo)簽):是現(xiàn)實文本的控件。
2.UILabel是UIView的子類,UILabel擴展了文字顯示的功能,UILabel是能顯示文字的視圖
3.創(chuàng)建方式和view的方法相同
UILabel使用示例
UILabel *userNameLabel = [[UILabel alloc]initWithFrame:CGRectMake(30, 100, 100, 30)]; userNameLabel.text = @"?用戶名";[containerView addSubview:userNameLabel];[userNameLabel release];


視圖中的方法

1.創(chuàng)建一個UI view對象 設(shè)置坐標(biāo) 和 視圖大小CGRectMack:
UIView *view = [[UIView alloc] initWithFrame:CGRectMack:(10,100,100,100)];
2.設(shè)置背景顏色 backgroundColor
view.backgroundColor = [UIColor redColor];
3.呈現(xiàn)view對象(給窗口中添加view視圖對象)addSubview:
[self.window addSubview:要添加的視圖對象];
4.設(shè)置bounds
[view setBounds : CGRectMake(0,0,100,100)];
5.隱藏window中的view視圖 YES表示隱藏 NO表示不隱藏
視圖對象名.hidden = YES;
6.視圖透明度, alpha取值范圍(0到1),0是全透明 1是不透明
視圖對象名.alpha = 0.5;
7.得到view的父類view
id supView = view.superview;
8.判斷對象類型 返回值是 BOOL值
BOOL a = [view isKindOfClass:[UIWindow class]];
9.將視圖在window中展現(xiàn)出來
[self.window addSubview : 要在window中呈現(xiàn)的 視圖對象];
10.把指定視圖放在頂層
[self.window bringSubviewToFront:要放置的視圖];
11.把指定的視圖移動到最底層
[self.window sendSubviewToBack:要放置的視圖];
12.交換兩個視圖的位置
[self.window exchangeSubviewAtlndex:3 withSubviewAtlndex:4];
13.刪除一個view
[要刪除的視圖 removeFromSuperview];

UILabel 中的方法
創(chuàng)建方法和view的創(chuàng)建一樣
UILabel *label = [[UILabel alloc] init]; label.frame = CGRectMake(100,100,100,100); label.backgroundColor = [UIColor redColor];
1.呈現(xiàn)文字
label.text = @“要輸入的文字”;
2.設(shè)置字體顏色
label.text = [UIColor whiteColor];
3.設(shè)置文字顯示位置
NSTextAlignmentLeft 左對齊
NSTextAlignmentCenter 中間對齊
NSTextAlignmentRight 右對齊
label.textAlignment = NSTextAlignmentCenter;
4.設(shè)置行數(shù) setNumberOfLines:
[label setNumberOfLines:0];
5.設(shè)置字體大小
[label setFont:[UIFont systemFontOfSize:30]];
6.設(shè)置陰影顏色 .shadowColor
label.shadowColor = [UIColor yellowColor];
7.設(shè)置陰影偏移量 .shadowOffset = CGSizeMake(1(左右),1(上下)),
label.shadowOffset = CGSizeMake:(1,1);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容