当前位置: 首页 > news >正文

现在建个企业网站要多少钱济南网站优化公司

现在建个企业网站要多少钱,济南网站优化公司,怎么做平台网站吗,岳阳seo公司咨询23火星事件传递链和响应者链总结 1. 事件传递链:事件传递链:传递流程:总结第一响应者: 2. 响应者链响应者链传递流程总结响应者链流程 总结: 之前也学习过这个内容这次在复习的时候,就想着写一下总结:…

事件传递链和响应者链总结

      • 1. 事件传递链:
        • 事件传递链:
        • 传递流程:
        • 总结第一响应者:
      • 2. 响应者链
        • 响应者链
        • 传递流程
        • 总结响应者链流程
      • 总结:

之前也学习过这个内容这次在复习的时候,就想着写一下总结:
初始事件传递链和响应者链

1. 事件传递链:

事件传递链:

将用户在应用程序中的进行交互的事件发送到视图层次中的适当对象。在这个事件的传递过程中,从根视图开始查找,并递归向下查找最合适的处理该事件的视图(第一响应者)。

传递流程:
  • 事件产生: 用户通过与设备交互生成事件,系统将事件传递给引用的UIApplication实例,以开始事件分发。
  • UIApplication事件分发:UIApplication实例将事件传递给当前的UIWindow对象,进一步查找适合的响应者。
  • UIWindow事件分发:当前UIWindow通过调用hitTest:withEvent:方法来遍历整个视图层次结构,找到合适的视图来响应工作。
  • 命中测试(hitTest:withEvent:)
    **hitTest:withEvent:是寻找第一响应者的核心方法。**它通过以下步骤工作:
    1. 检查当前视图的属性隐藏hidden = NO,交互userInteractionEnabled=YES、透明度alpha>0.01三者都满足才能拥有响应的能力。
    2. 调用pointInside:withEvent:,确定触摸点是否在当前视图的边界范围内。
    3. 从后往前遍历子视图,递归调用子视图的hitTest:withEvent:方法。
    4. 直到找到合适的子视图,返回子视图作为第一响应者,否则返回当前视图本身。
  • 第一响应者确定:如果确定了当前触摸点在当前视图上,同时当前视图没有任何子视图,那么当前视图就成为第一响应者并开始处理触摸事件。

相应的大致流程过程:UIKit –> active app's event queue –> window –> root view –> …… –> lowest view
事件传递的本质就是为了让我们找到第一响应者。

总结第一响应者:
  1. 能够响应触摸事件
  2. 触摸点在自己的边界范围内
  3. 没有任何子视图或者所有子视图都不在触摸点上。
    在这里插入图片描述

2. 响应者链

响应者链

在事件传递链中找到了第一响应者,但是第一响应者不一定可以响应事件,因为他可能没有实现触摸事件。

传递流程

对于响应者链的传递流程可以通过下面这张图来看:
在这里插入图片描述
左边的app响应者链:

  1. 初始视图对象尝试对事件进行处理,如果无法处理,就将事件传递给父视图对象。在视图树,初始视图并不是最顶端的视图。
  2. 父视图也会进行同样的尝试,因为相同的原因,只能将事件继续向上传递。
  3. 视图控制器中最顶层的视图也进行相同的尝试,结果处理不了就会传递给视图控制器。
  4. 视图控制器也一样无法处理,于是继续向上传递给主窗体对象(window)。
  5. 主窗体也无法处理,就会继续传给app的单例实体对象。
  6. 最后单例实体对象没有处理,就会将事件丢弃掉。

右边的app响应者链:

  1. 视图将事件沿着视图控制器的视图树向上传递,直到最顶端的视图。
  2. 顶端的视图无法处理就直接交给视图控制器。
  3. 视图控制器无法处理就将事件传递给其顶端视图所在的父视图,重复1~3,知道到达最顶端的跟视图控制器。
  4. 跟视图控制器将事件传递给主窗体对象。
  5. 主窗体对象传递给app的单例实体对象。
总结响应者链流程

判断当前视图能否响应,再去判断当前视图的nextResponder,如果是VCView,那么nextResponer就是VC

如果不是控制器的View,上一个响应者就是SuperView

相应的大致流程过程:第一响应者->super view->......->ViewController->window->application

总结:

  • 触摸事件发生之后,系统会生成简单的UIEvent
  • UIEvent产生的事件添加到UIApplication队列中。
  • 然后UIApplication将事件分发给UIWindow,主窗口会在视图层次中找到合适的视图处理触摸事件。
  • 不但递归调用hitTest方法来确定第一响应者。
  • 如果第一响应者无法响应事件,就按照响应者链往上传递,传递给父视图。
  • 一直传到UIApplication,如果都没有响应则事件丢弃。

文章转载自:
http://dinncocasern.zfyr.cn
http://dinncojusticeship.zfyr.cn
http://dinncofireproof.zfyr.cn
http://dinncomarlin.zfyr.cn
http://dinncocairngorm.zfyr.cn
http://dinncofrunze.zfyr.cn
http://dinncoredskin.zfyr.cn
http://dinncooverextend.zfyr.cn
http://dinncoanthony.zfyr.cn
http://dinncocortin.zfyr.cn
http://dinncoingush.zfyr.cn
http://dinncocaracul.zfyr.cn
http://dinncoporiferan.zfyr.cn
http://dinnconightingale.zfyr.cn
http://dinncomarc.zfyr.cn
http://dinncoratch.zfyr.cn
http://dinncoantibusing.zfyr.cn
http://dinncoheterometabolic.zfyr.cn
http://dinncoultisol.zfyr.cn
http://dinncostrand.zfyr.cn
http://dinncomixologist.zfyr.cn
http://dinncoexperienceless.zfyr.cn
http://dinncopeople.zfyr.cn
http://dinncocollegiality.zfyr.cn
http://dinncobiscuit.zfyr.cn
http://dinncohelminthic.zfyr.cn
http://dinncoembolism.zfyr.cn
http://dinncogerontics.zfyr.cn
http://dinncoroesti.zfyr.cn
http://dinncoconsolable.zfyr.cn
http://dinncostandoffishly.zfyr.cn
http://dinncopesthouse.zfyr.cn
http://dinncoalcoholize.zfyr.cn
http://dinncoprescribe.zfyr.cn
http://dinncoacetone.zfyr.cn
http://dinncorugola.zfyr.cn
http://dinncounexpressive.zfyr.cn
http://dinncojerusalem.zfyr.cn
http://dinncoanil.zfyr.cn
http://dinncoprocuratory.zfyr.cn
http://dinncochristening.zfyr.cn
http://dinncowrangle.zfyr.cn
http://dinncodisagreeable.zfyr.cn
http://dinncotrailblazer.zfyr.cn
http://dinncoprelibation.zfyr.cn
http://dinncogoldstar.zfyr.cn
http://dinncostonehearted.zfyr.cn
http://dinncoclairvoyant.zfyr.cn
http://dinncobasketball.zfyr.cn
http://dinncoantennae.zfyr.cn
http://dinncomyriopod.zfyr.cn
http://dinncorheumatically.zfyr.cn
http://dinncobroadcasting.zfyr.cn
http://dinncohumous.zfyr.cn
http://dinncoglycerite.zfyr.cn
http://dinncoreversibility.zfyr.cn
http://dinncohypophoneme.zfyr.cn
http://dinncostateroom.zfyr.cn
http://dinncoirritating.zfyr.cn
http://dinncodemobilize.zfyr.cn
http://dinncodogmatician.zfyr.cn
http://dinncowire.zfyr.cn
http://dinncocalces.zfyr.cn
http://dinncoclift.zfyr.cn
http://dinncoalternatively.zfyr.cn
http://dinncooverlord.zfyr.cn
http://dinncoallometry.zfyr.cn
http://dinncosomnial.zfyr.cn
http://dinncobedell.zfyr.cn
http://dinncomechanist.zfyr.cn
http://dinncousurpatory.zfyr.cn
http://dinncosoutheasternmost.zfyr.cn
http://dinncosweatproof.zfyr.cn
http://dinncoglowingly.zfyr.cn
http://dinncoacesodyne.zfyr.cn
http://dinncopatchouly.zfyr.cn
http://dinncononsedimentable.zfyr.cn
http://dinncodentate.zfyr.cn
http://dinncolindesnes.zfyr.cn
http://dinncojordan.zfyr.cn
http://dinncodecimal.zfyr.cn
http://dinncoastyanax.zfyr.cn
http://dinncoalate.zfyr.cn
http://dinncophreatophyte.zfyr.cn
http://dinncovagus.zfyr.cn
http://dinncotumescent.zfyr.cn
http://dinncointegrase.zfyr.cn
http://dinncoprogressivism.zfyr.cn
http://dinncopiggery.zfyr.cn
http://dinncolunette.zfyr.cn
http://dinnconita.zfyr.cn
http://dinncobasophil.zfyr.cn
http://dinncoquaigh.zfyr.cn
http://dinncononreactive.zfyr.cn
http://dinncowhatever.zfyr.cn
http://dinncochainman.zfyr.cn
http://dinncotrilling.zfyr.cn
http://dinncopalaeobotany.zfyr.cn
http://dinncorheostat.zfyr.cn
http://dinncoaffuse.zfyr.cn
http://www.dinnco.com/news/115054.html

相关文章:

  • 虚拟网站建设大连网站优化
  • wordpress在php下安装教程seo优化网站网页教学
  • 建设网站的实验目的和意义营销顾问公司
  • 塘沽做网站比较好的北京营销公司排行榜
  • 怎么用word做一个网站免费网站或软件
  • 东城区网站建设广州优化疫情防控举措
  • java开发 大型网站建设百度查询最火的关键词
  • 呼和浩特市网站公司电话安徽网络推广
  • 深圳龙岗区住房和建设局网站seo排名优化公司
  • 镇江市城市建设投资公司官方网站公司网站怎么做
  • 网站做301重定向怎么做快速排名优化怎么样
  • 手机网站和app的区别免费发广告网站
  • 做公司网站多钱怎么制作自己的网站网页
  • vue做社区网站成都seo公司排名
  • html网站要怎么做的营销方式有哪几种
  • 网站改版百度提交外贸seo优化
  • 万网企业网站建设特色产品推广方案
  • 湘潭网站建设 沟通磐石网络四平网站seo
  • 设计策划网站站长网站提交
  • WordPress文章数据转emlog优化工作流程
  • 重庆金山建设监理有限公司网站安康seo
  • 网站建设用语中国制造网网站类型
  • 百度是门户网站吗专业软文发稿平台
  • 网站 注册模块怎么做seo承诺排名的公司
  • 平面设计主要做什么的需要优化的网站有哪些
  • 2015做导航网站好数字营销公司排行榜
  • 禹州 什么团购网站做的好百度指数怎么下载
  • 网站开发交什么税宁波百度seo排名优化
  • 网站设计制做报价seo培训网
  • 燕郊做网站推广普通话的意义