91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

IOS學習筆記(五)之視圖的層次結構,查找,常用屬性與清理學習

發布時間:2020-08-22 21:49:11 來源:網絡 閱讀:799 作者:jiangqq900826 欄目:移動開發

     IOS學習筆記(五)之視圖的層次結構,查找,常用屬性與清理學習


     Author:hmjiangqq

     Email:jiangqqlmj@163.com

(一):視圖的層次結構

1.UIView層次結構可以理解為"視圖樹"-View Hierarchy

2.一個視圖就是一個容器,當一個視圖包含其他視圖的時候,兩個視圖之間就建立了

  一個父子復習。被包含的視圖被稱為"子視圖(subview)",包含的視圖稱為“父視圖或”

  超視圖(superview)"

3.從視覺上看,子視圖隱藏了俯視圖的內容,設置透明屬性可以看到父視圖的內容

4.每個父視圖都有一個有序的數組存儲著它的子視圖,存儲的順序就會影響到每個子視圖

 的顯示效果,比如:兩個兄弟視圖重疊在一起,后來被加入的視圖就會出現在另外視圖的上面

5.一個視圖可以嵌入多個subview,但是只能有一個superview

視圖的常用方法

     當調用addSubView的時候,會對其進行保留,相當于retain了一個對象,當調用removeFromSuperView時候

     會進行釋放該對象,相當于release了該對象

基本的添加和刪除子視圖的方法

- (void)removeFromSuperview;  - (void)insertSubview:(UIView *)view atIndex:(NSInteger)index;  - (void)exchangeSubviewAtIndex:(NSInteger)index1 withSubviewAtIndex:(NSInteger)index2;  - (void)addSubview:(UIView *)view;  - (void)insertSubview:(UIView *)view belowSubview:(UIView *)siblingSubview;  - (void)insertSubview:(UIView *)view aboveSubview:(UIView *)siblingSubview;  - (void)bringSubviewToFront:(UIView *)view;  - (void)sendSubviewToBack:(UIView *)view;


實例代碼:


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  {      self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];      // Override point for customization after application launch.      self.window.backgroundColor = [UIColor whiteColor];      [self.window makeKeyAndVisible];      UIView *view1=[[UIView alloc]initWithFrame:CGRectMake(60, 100, 200, 100)];      view1.backgroundColor=[UIColor redColor];      [self.window addSubview:view1];      [view1 release];            UIView *view2=[[UIView alloc]initWithFrame:CGRectMake(0, 0, 50, 50)];      view2.backgroundColor=[UIColor blueColor];      [self.window addSubview:view2];      [view2 release];            NSLog(@"view1 superview:%@",[view1 superview]);      NSLog(@"view2 superview:%@",[view2 superview]);      NSLog(@"self.window subViews:%d",[[self.window subviews]count]);            return YES;  }

運行截圖:


IOS學習筆記(五)之視圖的層次結構,查找,常用屬性與清理學習


(二):視圖的查找

1.UIView類中又一個tag屬性,通過這個tag屬性可以標示一個視圖對象(整數)

2.獲取的方法,viewWithTag:方法來檢索標示過的子視圖:

 [注]:如果tag值不設置,默認的tag值為0;

設置和查找方法代碼如下:

UIView *view3=[[UIView alloc]initWithFrame:CGRectMake(60, 250, 200, 100)];      view3.tag=100;      view3.backgroundColor=[UIColor yellowColor];      [self.window addSubview:view3];      [view3 release];      NSLog(@"view3:%@",view3);      //通過tag值查找view      UIView *myView=[self.window viewWithTag:100];      myView.alpha=0.1;      NSLog(@"myView:%@",myView);      return YES; 


 運行截圖:  

IOS學習筆記(五)之視圖的層次結構,查找,常用屬性與清理學習


(三):常用屬性:


1.alpha   //透明度

2.backgroundColor   //背景顏色

3.subViews     //子視圖集合

4.hidden     //是否隱藏

5.tag      //標簽紙

6.superview   //父視圖

7.multipleTouchEnabled  //是否開啟多點觸摸

8.userInteractionEnabled //是否響應觸摸事件

(四)自定義UIView

繼承UIView,創建對象

(五)視圖對象的清理

   如果手動創建一個視圖,分配了任何內存,存儲了了任何對象的引用,都需要釋放資源,

必須實現dealloc方法。當某個對象的引用計數為0,系統會調用其dealloc方法去釋放對象資源

切記不要手動調用dealloc方法

-(void)dealloc{

//釋放自定義對象

[super dealloc];

}

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

海城市| 高州市| 交口县| 宁南县| 阜平县| 乌鲁木齐市| 渑池县| 龙南县| 新绛县| 察哈| 恩施市| 武平县| 兴安盟| 荆州市| 霍林郭勒市| 斗六市| 邹平县| 翁牛特旗| 广饶县| 松潘县| 绥江县| 岚皋县| 尼玛县| 宜川县| 毕节市| 新丰县| 都昌县| 婺源县| 鸡西市| 河东区| 甘肃省| 清苑县| 长阳| 桂平市| 仙居县| 丰城市| 朝阳市| 墨竹工卡县| 名山县| 通化县| 香格里拉县|