• iOS UIView视图的图层控制


    1、添加视图

         insertSubview:atIndex:   //放在子视图数组的具体索引位置

         insertSubview:aboveSubview:   //某个子视图前面

         insertSubview:aboveSubview:   //某个子视图前面

    2、重新排序和删除子视图

          [parentView exchangeSubviewAtIndex:i withSubviewAtIndex:j]//交换两个视图的位置

          bringSubviewToFront:和sendSubviewToBack://将子视图提前活置后

          [childView removeSuperview]//删除某个视图的子视图

    3、视图回调

       某个视图的层次一改变,该视图就会收到一次回调。

       a、调用addSubivew:成功后会给该视图发送didAddSubivew:回调,触发UIView的子类在心增视图时执行其他操作。

       b、didMoveToSuperview:会通知相关视图他们的上级视图已经变化。

       c、视图移动前会发出willMoveToSuperview:回调

       d、didMoveToWindow:回调和didMoveToSuperview:相似,从命名上能看出其区别。

       e、willMoveToWindow:在视图移动前发出的回调。

        f、willRemoveToSubview:回调通知父视图子视图即将被删除


    UIView掌管直接屏幕绘图。他的drawRect:方法提供一种低级方式来直接绘制内容,允许使用Quartz 2D调用创建和显示任意元素,可将这两个元素结合起来共同构建具体、可操作的界面。

    当用户触摸屏幕时,Touchview类收集一系列点,在每个触摸移动之处,touchesMoved:WithEvent:方法调用setNeedsDisplay。这又会触发对drawRect:方法的调用,其中视图将这些点绘制成线段来创建一个可视屏幕路径。


    UIView类的很多属性都被设计为可动画的(animatable)。可动画的属性是指当属性从一个值变为另一个值的时候,可以半自动地支持动画。您仍然必须告诉UIKit希望执行什么类型的动画,但是动画一旦开始,Core Animation就会全权负责。UIView对象中支持动画的属性有如下几个:

        frame

        bounds

        center

        transform

        alpha

    边框、边界、和中心的关系

    视图对象通过frame、bounds、和center属性声明来跟踪自己的大小和位置。frame属性包含一个矩形,即边框矩形,用于指定视图相对于其父视图坐标系统的位置和大小。bounds属性也包含一个矩形,即边界矩形,负责定义视图相对于本地坐标系统的位置和大小。虽然边界矩形的原点通常被设置为 (0, 0),但这并不是必须的。center属性包含边框矩形的中心点。

  • 相关阅读:
    vue路由传参页面刷新参数丢失问题解决方案
    理解MVC,MVP 和 MVVM
    HTTPS用的是对称加密还是非对称加密?
    元素显示隐藏的9种思路
    CSS中层叠上下文
    DOM盒模型和位置 client offset scroll 和滚动的关系
    css重点知识和bug解决方法
    你可能不知道的CSS
    如何在 React 中优雅的写 CSS?
    html5不常用标签应用场景
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/11196566.html
Copyright © 2020-2023  润新知