一點一滴,編程人生

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            69 隨筆 :: 0 文章 :: 25 評論 :: 0 Trackbacks

          概述

          UIView對象在屏幕中定義了一個復雜區域和界面來管理這個區域的內容

          視圖的職責:
          畫圖和動畫。
          布局和子視圖管理。

          事件處理。

           

          1、創建一個視圖對象

          CGRect viewRect = CGRectMake(10,10,100,100);
          UIView* myView = [[UIView alloc] initWithFrame:viewRect];
          [self.window addSubview :myView];//將視圖作為子視圖添加到window中

          2、動畫

          改變一些視圖屬性將會使用到動畫,改變屬性時創建一個動畫,用于給用戶傳遞在較短時間內的變化。UIView類做了動畫展現的大部分工作,但是你仍然需要聲明哪種屬性改變的時候,你需要動畫效果。有兩種不同的類型來初始化動畫
          下面的UIView屬性支持動畫:
          frame,bounds,center,transform,alpha,backgroundColor,contentStretch
          在iOS 4之后,使用block-based動畫方法(推薦使用)
          使用 開始/提交方式(begin/commit)

          3、管理視圖的層次結構

          superview屬性:
          subviews屬性:
          window屬性:
          -addSubview方法
          -bringSubviewToFront:(UIView *)veiw方法,將view視圖移到層次結構的最頂端,使得其得以展示
          -sendSubviewToBack:(UIView *)veiw方法,和上面方法正好相反
          -removeFromSupview方法,
          -insertSubview:(UIView *)view atIndex:(Interger)index方法
          -insertSubview:(UIView *)view aboveSubview(UIView *)siblingView 方法
          -insertSubview:(UIView *)view belowSubview(UIView *)siblingView 方法
          -exchangeSubviewAtIndex:(NSInteger)index1 withSubviewAtIndex:(NSInteger)index2方法
          -isDescendantOfView:(UIView *)view方法,判斷view是不是指定視圖的子視圖

          4、子視圖的布局(layout)

          -layoutSubviews方法,這個方法,默認沒有做任何事情,需要子類進行重寫
          -setNeedsLayout方法
          -layoutIfNeeded方法,立即對子視圖進行布局

          5、畫/更新視圖

          -drawRect:(CGRect)rect方法
          -setNeedsDisplay
          -setNeedsDisplayInRect:(CGRect)invalidRect方法

          6、以塊展現動畫的方式(animating views with block)

          + animateWithDuration:delay:options:animations:completion:
          + animateWithDuration:animations:completion:
          + animateWithDuration:animations:
          + transitionWithView:duration:options:animations:completion:

          + transitionFromView:toView:duration:options:completion:

          7、在視圖和坐標系統之間轉換

          -convertPoint:toView
          -convetPoint:fromView
          -convertRect:toView
          -convertRect:fromView

          8、跟蹤視圖相關的改變

          -didAddSubview:
          -willRemoveSubview:
          -willMoveToSuperview
          -didMoveToSuperview
          -willMoveToWindow:
          -didMoveToWindow
          posted on 2012-04-20 10:37 writegull 閱讀(9679) 評論(0)  編輯  收藏 所屬分類: iphone
          主站蜘蛛池模板: 长白| 肥乡县| 佛坪县| 宁海县| 牙克石市| 承德县| 普格县| 宝鸡市| 收藏| 抚松县| 应城市| 拜城县| 丰宁| 班玛县| 宣武区| 南郑县| 子长县| 东乡族自治县| 成都市| 宜川县| 茶陵县| 怀宁县| 通榆县| 景泰县| 洞口县| 和龙市| 镇原县| 淮安市| 新和县| 丹阳市| 绥德县| 镶黄旗| 三穗县| 福建省| 钟山县| 邢台县| 吉林省| 青岛市| 金沙县| 砚山县| 高雄市|