CN113835697A - 事件响应方法和装置 - Google Patents
事件响应方法和装置 Download PDFInfo
- Publication number
- CN113835697A CN113835697A CN202010579242.6A CN202010579242A CN113835697A CN 113835697 A CN113835697 A CN 113835697A CN 202010579242 A CN202010579242 A CN 202010579242A CN 113835697 A CN113835697 A CN 113835697A
- Authority
- CN
- China
- Prior art keywords
- response
- event
- view
- user operation
- application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000004044 response Effects 0.000 title claims abstract description 197
- 238000000034 method Methods 0.000 title claims abstract description 70
- 230000007246 mechanism Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 10
- 238000001514 detection method Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 8
- 238000011161 development Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开的实施例公开了事件响应方法和装置。该方法的一具体实施方式包括:响应于检测到针对应用的用户操作,创建用户操作对应的事件;将事件传递给用户操作对应的视图对象;根据预设的、视图对象对应的响应对象序列,确定事件的响应对象,其中,响应对象序列根据应用的视图层次结构确定;控制响应对象对事件进行响应。该实施方式有助于降低终端的响应延迟。
Description
技术领域
本公开的实施例涉及计算机技术领域,具体涉及事件响应方法和装置。
背景技术
随着移动互联网的快速发展和普及,基于移动终端涌现了大批开发的用于提供各种服务的应用(Application),以满足用户的各种日常需求。由于许多应用都需要借助与用户之间的交互以提供服务。因此,在一些应用的开发过程中,如何响应用户操作产生的事件是必须要考虑和解决的问题之一。
在实现本申请的过程中,发明人发现:每个应用通常都是按照一定的结构组成的,包括应用的每个页面都是按照一定的视图结构设计的。在此基础上,对于用户操作产生的事件,通常是按照视图结构逐层进行传递,每层依次接收传递的事件并判断自身是否可以响应,如果不能响应该事件,则继续传递到下一个对象,直到找到可以响应该事件的对象以完成该事件的响应。
发明内容
本公开的实施例提出了事件响应方法和装置。
第一方面,本公开的实施例提供了一种事件响应方法,该方法包括:响应于检测到针对应用的用户操作,创建用户操作对应的事件;将事件传递给用户操作对应的视图对象;根据预设的、视图对象对应的响应对象序列,确定事件的响应对象,其中,响应对象序列根据应用的视图层次结构确定;控制响应对象对事件进行响应。
在一些实施例中,控制响应对象对事件进行响应,包括:基于反射机制,控制响应对象对事件进行响应。
在一些实施例中,基于反射机制,控制响应对象对事件进行响应,包括:获取事件对应的预设字符串;通过字符串进行反射以确定事件对应的响应方法;控制响应对象执行响应方法以完成对事件的响应。
在一些实施例中,应用为IOS应用;以及视图对象对应的响应对象序列为视图对象对应的响应链。
第二方面,本公开的实施例提供了一种事件响应装置,该装置包括:创建单元,被配置成响应于检测到针对应用的用户操作,创建用户操作对应的事件;传递单元,被配置成将事件传递给用户操作对应的视图对象;确定单元,被配置成根据预设的、视图对象对应的响应对象序列,确定事件的响应对象,其中,响应对象序列根据应用的视图层次结构确定;响应单元,被配置成控制响应对象对事件进行响应。
在一些实施例中,响应单元进一步被配置成:基于反射机制,控制响应对象对事件进行响应。
在一些实施例中,响应单元进一步被配置成:获取事件对应的预设字符串;通过字符串进行反射以确定事件对应的响应方法;控制响应对象执行响应方法以完成对事件的响应。
在一些实施例中,应用为IOS应用;以及视图对象对应的响应对象序列为视图对象对应的响应链。
第三方面,本公开的实施例提供了一种终端,该终端包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实现方式描述的方法。
第四方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
本公开的实施例提供的事件响应方法和装置,通过创建用户操作对应的事件并把事件传递给用户操作关联的视图对象,进而利用预设的与视图对象对应的响应对象序列查找事件的响应对象,并控制查找到的事件的响应对象完成针对该事件的响应。由此,可以利用预设的响应对象序列直接查找到事件的响应对象,而不需要视图对象将事件一层一层进行传递并在每层进行判断的过程。这样一来,对于开发人员来说,对于每个事件,就不需要破坏每个层级的代码结构,从而避免在每层实现大量的冗余代码,提升应用的开发效率。对于用户来说,通过简捷的方式实现对事件的响应,有助于提升应用的事件响应速度,从而降低终端的响应延迟。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本公开的事件响应方法的一个实施例的流程图;
图3是根据本公开的事件响应方法的又一个实施例的流程图;
图4是根据本公开的实施例的事件响应方法的一个应用场景的示意图;
图5是根据本公开的事件响应装置的一个实施例的结构示意图;
图6是适于用来实现本公开的实施例的电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
图1示出了可以应用本公开的事件响应方法或事件响应装置的实施例的示例性架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种客户端应用。例如,浏览器类应用、搜索类应用、即时通信工具、社交平台软件、信息流类应用等等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以是提供各种服务的服务器,例如为终端设备101、102、103上安装的客户端应用提供支持的后端服务器。服务器105可以接收终端设备101、102、103发送的请求并进行响应,将响应结果反馈给终端设备101、102、103。
需要说明的是,上述客户端应用也可以离线使用。此时,客户端应用的使用不需要需服务器105的交互,可以不存在服务器105和网络104。
需要说明的是,本公开的实施例所提供的事件响应方法一般由终端设备101、102、103执行,相应地,事件响应装置一般设置于终端设备101、102、103中。
还需要指出的是,服务器105本身也可以视为终端设备,服务器105上也可以安装有各种类型的应用。服务器105上所安装的应用也可以检测用户操作并对对应产生的事件进行响应处理。此时,此时,事件响应方法也可以由服务器105执行,相应地,事件响应装置也可以设置于服务器105中。此时,示例性系统架构100可以不存在终端设备101、102、103和网络104。
需要说明的是,服务器105可以是硬件,也可以是软件。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器105为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,其示出了根据本公开的事件响应方法的一个实施例的流程200。该事件响应方法包括以下步骤:
步骤201,响应于检测到针对应用的用户操作,创建用户操作对应的事件。
在本实施例中,应用可以指本公开的事件响应方法的执行主体(如图1所示的终端设备101、102、103)上所安装的客户端应用。根据上述执行主体的不同,应用可以是不同类型的应用。例如,上述执行主体可以采用Android操作系统。此时,应用可以是Android应用。又例如,上述执行主体可以采用IOS操作系统。此时,应用可以是IOS应用。
用户操作可以指应用可检测到并接收的各种操作。例如,点击操作、滑动操作等等。上述执行主体在检测到针对应用的用户操作时,可以创建该用户操作对应的事件(如Event)。创建的事件即可以用于表征该用户操作。应当可以理解,创建的事件可以指示该用户操作的各种属性信息(如用户操作的类型、时间等等)。
需要说明的是,针对不同类型的执行主体(如不同操作系统等)、不同类型的应用(如不同开发语言的应用等)等实际应用场景的不同,创建事件的方法可以不同。
步骤202,将事件传递给用户操作对应的视图对象。
在本实施例中,用户操作对应的视图对象可以指用户操作发生时的视图(如View)的对象。例如,用户操作为与上述执行主体的显示装置(如显示屏等)接触的操作时,用户操作对应的视图对象可以是用户触摸显示屏的位置所在的视图的对象。
作为示例,用户点击上述执行主体上所安装的客户端应用首页上的一个按钮,此时,上述执行主体在检测到用户的手指或触摸笔等与其屏幕的接触时,可以通知操作系统以使操作系统创建用于指示检测到的这一用户操作的事件,然后操作系统可以将创建的事件传递给当前正在运行的该客户端应用的事件队列。然后客户端应用会将事件队列中的该事件传递给用户所点击的按钮所在的视图的对象。
步骤203,根据预设的、视图对象对应的响应对象序列,确定事件的响应对象。
在本实施例中,在本实施例中,视图对象对应的响应对象序列可以指预设的与该视图对象对应的视图所对应的响应对象序列。换言之,可以预先针对应用的每个视图,预先设置与该视图对应的响应对象序列。
其中,每个视图对应的响应对象序列可以根据应用的视图层次结构确定。一般地,应用的视图层次结构在应用的开发阶段已经确定,即应用的视图层次结构是预先设计好的。应用的视图层次结构可以用于表征应用的各视图之间的层级关系。例如,根视图下包括哪些子视图,以及每个子视图还有哪些子视图等。具体地,每个视图对应的响应对象序列可以由从该视图到根视图的路径所包括的各视图的对象按层级顺序组成。
应当可以理解,每个视图对应的响应对象序列中包括该视图,即该视图一些情况下也可以响应用户操作对应的事件。对于每个视图,该视图的对象可以根据实际的应用场景确定。例如,视图的对象可以是创建的视图对象,也可以是视图对应的视图控制器等。
对于每个用户操作对应的事件,在应用开发阶段,根据实际的应用需求,可以预先设计好该事件的响应对象。此时,只需要从用户操作对应的视图对象对应的响应对象序列中查找预设的、与事件对应的响应对象即可。
步骤204,控制响应对象对事件进行响应。
在本实施例中,在从视图对象对应的响应对象序列中查找到可以响应该事件的响应对象时,可以进一步利用该响应对象完成对用户操作对应的事件的响应,即完成对用户操作的响应。
在本实施例的一些可选的实现方式中,在应用为IOS应用时,上述响应对象序列可以为响应链(Responder Chain)。响应链由IOS原生设计,可以把所有参与对象按照层级关系完整地联系在一起。
在IOS系统的事件传递和处理过程中,通常也是按照视图层级结构一层一层传递事件,每层在接收到事件之后判断自身是否可以响应,如果不能响应,则继续往下一层传递,以此类推。
而通过利用响应链查找当前检测到的用户操作对应的事件的响应对象,即利用响应链找到可以响应当前事件的层级,从而可以让响应链发挥作用,以简化应用开发,提升应用开发速度。
本公开的上述实施例提供的方法通过对每个视图预设该视图对应的响应对象序列,进而在检测到用户操作并创建对应的事件之后,可以直接从用户操作对应的视图对象所在的响应对象序列中查找可以响应该事件的响应对象,从而利用查找到的响应对象完成对用户操作的响应,这样一来在处理事件传递时,每个视图的对象就无需实现接收其它视图的对象传递的事件,并判断自身是否可以响应,以及在自身不能响应时,进一步向其它视图的对象传递该事件等操作,即不需要不断的进行对象之间的透传,也不需要将相应代码入侵到每个层级,从而避免开发人员实现大量的冗余代码,以保证每个视图相关的代码结构的简洁性和高维护性。同时,基于这种事件传递和响应的处理方式,可以提升对用户操作对应的事件的处理速度,从而减小针对用户操作的响应延迟。
进一步参考图3,其示出了事件响应方法的又一个实施例的流程300。该事件响应方法的流程300,包括以下步骤:
步骤301,响应于检测到针对应用的用户操作,创建用户操作对应的事件。
步骤302,将事件传递给用户操作对应的视图对象。
步骤303,根据预设的、视图对象对应的响应对象序列,确定事件的响应对象。
步骤304,基于反射机制,控制响应对象对事件进行响应。
在本实施例中,反射机制是一种间接操作目标对象的机制,可以在应用的运行状态中,构造任意一个类的对象,了解任意一个对象所属的类、任意一个类的成员变量和方法,还可以调用任意一个对象的属性和方法等等。反射机制是目前广泛研究和应用的公知技术,在此不再赘述。
通过使用反射机制,控制响应对象对事件进行响应可以提升应用的灵活性,而且可以节省应用运行过程中的许多处理资源,从而有助于提升应用更新的灵活性和便捷性。
在本实施例的一些可选的实现方式中,可以通过如下步骤利用反射机制控制响应对象完成对事件的响应:获取事件对应的预设字符串;通过字符串进行反射以确定事件对应的响应方法;控制响应对象执行响应方法以完成对事件的响应。
其中,对于每个用户操作产生的事件,可以由技术人员预先设置对应的字符串。例如,字符串可以设置为与该事件的响应对象完成该事件的响应的方法的方法名相同。之后,可以利用字符串进行反射,以从该事件的响应对象可调用的方法中找到与该字符串对应的响应方法,进而可以由响应对象调用利用反射找到的响应方法完成对该事件的响应。由此,可以进一步提升应用代码的灵活性,从而提升应用的可扩展性。
上述步骤301、302、303以及未详细说明的内容的具体执行过程可参考图2对应实施例中的相关内容的相关说明,在此不再赘述。
继续参见图4,图4是根据本实施例的事件响应方法的一个示意性的应用场景400。在图4的应用场景中,用户使用终端401浏览页面。如图中所示,页面上包括两个按钮。一个按钮用于指示加载更多信息,另一个页面用于指示返回上一个页面。
其中,按钮“加载更多”所在的视图的位置如标号4011指示的虚线框所示,按钮“返回”所在的视图的位置如标号4012指示的虚线框所示。而这两个按钮所在的视图都是当前页面所在的视图的子视图。当前页面所在的视图的位置如图中标号4013指示的虚线框所示。
用户在点击加载更多的按钮之后,创建对应的点击事件,之后可以利用该按钮对应的响应链“BT1View-topView(BT1View)-Window-Application”查找可以响应该点击事件的对象。其中,“BT1View”为按钮“加载更多”对应的视图对象。“topView”为“BT1View”对应的视图的父视图,即当前页面对应的视图对象。“Window”指当前页面所在的窗口对象。“Application”指展示当前页面的应用。
通过响应链查找可以确定响应该点击事件的是当前页面对应的视图对象。然后,可以利用预先设置的与该点击事件对应的字符串“LoadMore”进行反射找到当前页面对应的视图对象可调用的方法“LoadMore()”,并由当前页面对应的视图对象调用该方法完成对该点击事件的响应,即在当前页面上向用户展示更多的信息(如图中标号401`所示)。
本公开的上述实施例提供的方法在利用响应对象序列查找用户操作对应的事件的响应对象的同时,利用反射机制查找用户操作对应的事件的响应方法,即利用响应链找到可以响应当前事件的层级,然后利用反射机制找到能够处理事件的行为,从而由响应对象调用找到的响应方法完成对用户操作对应的事件的响应,由此可以实现参与事件传递的任两个对象之间的隔空交流,而不需要不断地在各个对象之间进行透传,有助于提升事件传递和响应效率,而且有助于提升应用代码的灵活性和应用的可扩展性。
进一步参考图5,作为对上述各图所示方法的实现,本公开提供了事件响应装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例提供的事件响应装置500包括创建单元501、传递单元502、确定单元503和响应单元504。其中,创建单元501被配置成响应于检测到针对应用的用户操作,创建用户操作对应的事件;传递单元502被配置成将事件传递给用户操作对应的视图对象;确定单元503被配置成根据预设的、视图对象对应的响应对象序列,确定事件的响应对象,其中,响应对象序列根据应用的视图层次结构确定;响应单元504被配置成控制响应对象对事件进行响应。
在本实施例中,事件响应装置500中:创建单元501、传递单元502、确定单元503和响应单元504的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201、步骤202、步骤203和步骤204的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述响应单元504进一步被配置成:基于反射机制,控制响应对象对事件进行响应。
在本实施例的一些可选的实现方式中,上述响应单元504进一步被配置成:获取事件对应的预设字符串;通过字符串进行反射以确定事件对应的响应方法;控制响应对象执行响应方法以完成对事件的响应。
在本实施例的一些可选的实现方式中,应用为IOS应用;以及视图对象对应的响应对象序列为视图对象对应的响应链。
本公开的上述实施例提供的装置,通过创建单元响应于检测到针对应用的用户操作,创建用户操作对应的事件;传递单元将事件传递给用户操作对应的视图对象;确定单元根据预设的、视图对象对应的响应对象序列,确定事件的响应对象,其中,响应对象序列根据应用的视图层次结构确定;响应单元控制响应对象对事件进行响应,从而避免开发人员实现大量的冗余代码,以保证每个视图相关的代码结构的简洁性和高维护性。同时,基于这种事件传递和响应的处理方式,可以提升对用户操作对应的事件的处理速度,从而减小针对用户操作的响应延迟。
下面参考图6,其示出了适于用来实现本公开的实施例的电子设备(例如图1中的终端设备)600的结构示意图。本公开的实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的终端设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图6中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开的实施例的方法中限定的上述功能。
需要说明的是,本公开的实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述终端设备中所包含的;也可以是单独存在,而未装配入该终端设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该终端设备执行时,使得该终端设备:响应于检测到针对应用的用户操作,创建用户操作对应的事件;将事件传递给用户操作对应的视图对象;根据预设的、视图对象对应的响应对象序列,确定事件的响应对象,其中,响应对象序列根据应用的视图层次结构确定;控制响应对象对事件进行响应。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括创建单元、传递单元、确定单元和响应单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,创建单元还可以被描述为“响应于检测到针对应用的用户操作,创建用户操作对应的事件的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种事件响应方法,包括:
响应于检测到针对应用的用户操作,创建所述用户操作对应的事件;
将所述事件传递给所述用户操作对应的视图对象;
根据预设的、所述视图对象对应的响应对象序列,确定所述事件的响应对象,其中,所述响应对象序列根据所述应用的视图层次结构确定;
控制所述响应对象对所述事件进行响应。
2.根据权利要求1所述的方法,其中,所述控制所述响应对象对所述事件进行响应,包括:
基于反射机制,控制所述响应对象对所述事件进行响应。
3.根据权利要求2所述的方法,其中,所述基于反射机制,控制所述响应对象对所述事件进行响应,包括:
获取所述事件对应的预设字符串;
通过所述字符串进行反射以确定所述事件对应的响应方法;
控制所述响应对象执行所述响应方法以完成对所述事件的响应。
4.根据权利要求1-3之一所述的方法,其中,所述应用为IOS应用;以及
所述视图对象对应的响应对象序列为所述视图对象对应的响应链。
5.一种事件响应装置,其中,所述装置包括:
创建单元,被配置成响应于检测到针对应用的用户操作,创建所述用户操作对应的事件;
传递单元,被配置成将所述事件传递给所述用户操作对应的视图对象;
确定单元,被配置成根据预设的、所述视图对象对应的响应对象序列,确定所述事件的响应对象,其中,所述响应对象序列根据所述应用的视图层次结构确定;
响应单元,被配置成控制所述响应对象对所述事件进行响应。
6.根据权利要求5所述的装置,其中,所述响应单元进一步被配置成:
基于反射机制,控制所述响应对象对所述事件进行响应。
7.根据权利要求6所述的装置,其中,所述响应单元进一步被配置成:
获取所述事件对应的预设字符串;
通过所述字符串进行反射以确定所述事件对应的响应方法;
控制所述响应对象执行所述响应方法以完成对所述事件的响应。
8.根据权利要求5-7之一所述的装置,其中,所述应用为IOS应用;以及
所述视图对象对应的响应对象序列为所述视图对象对应的响应链。
9.一种终端,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-4中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010579242.6A CN113835697A (zh) | 2020-06-23 | 2020-06-23 | 事件响应方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010579242.6A CN113835697A (zh) | 2020-06-23 | 2020-06-23 | 事件响应方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113835697A true CN113835697A (zh) | 2021-12-24 |
Family
ID=78963897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010579242.6A Pending CN113835697A (zh) | 2020-06-23 | 2020-06-23 | 事件响应方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113835697A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104808913A (zh) * | 2014-01-23 | 2015-07-29 | 腾讯科技(深圳)有限公司 | 事件响应方法和装置 |
CN106126355A (zh) * | 2016-06-22 | 2016-11-16 | 百度在线网络技术(北京)有限公司 | 基于iOS系统的事件传递方法和装置 |
CN108228159A (zh) * | 2018-02-02 | 2018-06-29 | 中国银行股份有限公司 | 一种基于响应链的对象交互方法及系统 |
CN110554892A (zh) * | 2018-05-31 | 2019-12-10 | 北京京东尚科信息技术有限公司 | 信息获取方法和装置 |
CN110874172A (zh) * | 2018-08-31 | 2020-03-10 | 北京京东尚科信息技术有限公司 | 放大app界面的方法、装置、介质及电子设备 |
CN111158820A (zh) * | 2019-12-25 | 2020-05-15 | 网易传媒科技(北京)有限公司 | 控件点击事件处理方法、装置、电子设备及存储介质 |
-
2020
- 2020-06-23 CN CN202010579242.6A patent/CN113835697A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104808913A (zh) * | 2014-01-23 | 2015-07-29 | 腾讯科技(深圳)有限公司 | 事件响应方法和装置 |
CN106126355A (zh) * | 2016-06-22 | 2016-11-16 | 百度在线网络技术(北京)有限公司 | 基于iOS系统的事件传递方法和装置 |
CN108228159A (zh) * | 2018-02-02 | 2018-06-29 | 中国银行股份有限公司 | 一种基于响应链的对象交互方法及系统 |
CN110554892A (zh) * | 2018-05-31 | 2019-12-10 | 北京京东尚科信息技术有限公司 | 信息获取方法和装置 |
CN110874172A (zh) * | 2018-08-31 | 2020-03-10 | 北京京东尚科信息技术有限公司 | 放大app界面的方法、装置、介质及电子设备 |
CN111158820A (zh) * | 2019-12-25 | 2020-05-15 | 网易传媒科技(北京)有限公司 | 控件点击事件处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113110941B (zh) | 使用应用容器管理代码和依赖性数据的传递 | |
EP4033374A1 (en) | Method and device for synchronizing node data | |
US11783111B2 (en) | Display method and apparatus, and electronic device | |
CN110619100B (zh) | 用于获取数据的方法和装置 | |
CN110781373B (zh) | 榜单更新方法、装置、可读介质和电子设备 | |
CN113741756A (zh) | 信息处理方法、装置、终端和存储介质 | |
CN111596991A (zh) | 交互操作执行方法、装置和电子设备 | |
CN111694629A (zh) | 信息展示方法、装置和电子设备 | |
CN110618768B (zh) | 信息呈现方法和装置 | |
CN111324376A (zh) | 功能配置方法、装置、电子设备及计算机可读介质 | |
CN110806834A (zh) | 基于输入法的信息处理方法、装置、电子设备及介质 | |
CN112256372B (zh) | 信息处理方法、装置和电子设备 | |
CN111723309A (zh) | 用于网页搜索的方法和装置 | |
CN111580883B (zh) | 应用程序启动方法、装置、计算机系统和介质 | |
CN110827037A (zh) | 基于区块链的数据交互方法和装置 | |
CN113835697A (zh) | 事件响应方法和装置 | |
CN114417782A (zh) | 展示方法、装置和电子设备 | |
CN111291090B (zh) | 基于时间控件获取时间段的方法、装置、电子设备及介质 | |
JP2024500300A (ja) | 情報インタラクション方法、装置、及び機器 | |
CN113568695A (zh) | 寄宿应用角标处理方法和装置 | |
CN115933919A (zh) | 交互方法、装置、电子设备及计算机可读存储介质 | |
CN112311842A (zh) | 用于信息交互的方法和装置 | |
CN110099122B (zh) | 用于发送网络请求的方法和装置 | |
CN116360710B (zh) | 应用于服务器集群的数据存储方法、电子设备和可读介质 | |
CN112468849B (zh) | 用于视频信息传输的方法、装置、电子设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |