CN117519865A - 重新加载显示界面的方法和电子设备 - Google Patents

重新加载显示界面的方法和电子设备 Download PDF

Info

Publication number
CN117519865A
CN117519865A CN202311253202.2A CN202311253202A CN117519865A CN 117519865 A CN117519865 A CN 117519865A CN 202311253202 A CN202311253202 A CN 202311253202A CN 117519865 A CN117519865 A CN 117519865A
Authority
CN
China
Prior art keywords
interface
active area
display
area
mode
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
Application number
CN202311253202.2A
Other languages
English (en)
Inventor
郝裕斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202311253202.2A priority Critical patent/CN117519865A/zh
Publication of CN117519865A publication Critical patent/CN117519865A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请提供一种重新加载显示界面的方法和电子设备,该方法包括:在电子设备的屏幕上同时显示正在运行的第一应用的第一界面和第二界面,第二界面是在第一界面中的第一控件的触发下显示的;当检测到电子设备被旋转后,启动重新加载显示界面的进程;在重新加载显示界面的进程中,根据旋转前的第一界面的活动区域和第二界面的活动区域组成的整体活动区域,确定目标活动区域;在重新加载显示界面的进程中,根据目标活动区域重新加载显示界面。该方案主要通过结合了旋转前的两个活动区域所组成的整体来确定目标活动区域,从而避免了其中某个活动区域被误当成需要填充的部分被填充后失效。

Description

重新加载显示界面的方法和电子设备
技术领域
本申请涉及电子设备技术领域,尤其涉及一种重新加载显示界面的方法和电子设备。
背景技术
在手机或平板电脑等电子设备开启自动旋转功能后,当发生旋转之后,需要重新加载显示界面,也就是将显示界面旋转到跟电子设备的旋转方向一致。
在传统的电子设备中,对于一个运行的应用而言,在一个时刻只会显示一个界面,当发生旋转,就会重新加载这个界面,并将这个界面按照旋转后的显示要求进行显示。但是随着技术的发展,出现了折叠屏电子设备,使得电子设备的可以呈现的屏幕变大了,所以即使同时显示多个界面也能满足用户的使用需求,不会因为界面的显示面积太小而看不清晰,也因此出现了一个应用在运行的时候能够同时打开并显示多个界面的情况,每个界面都可以进行交互。例如一个购物应用,可以同时打开首页和下一级界面两个界面,使得用户使用感受更好了。
但是这也带来了新的问题,在实际使用场景中,发现在电子设备同时显示一个运行应用的两个界面的场景下,在自动旋转功能开启的情况下,当发生了旋转之后,两个界面的显示角度虽然旋转到了跟电子设备的旋转方向一致,但是,两个界面中却有一个界面无法再进行交互操作,也就是说,点击其中一个界面中的任意控件,电子设备都无法进行响应。
因此在正在运行的应用同时显示多个界面的场景中,当旋转后重新加载显示界面的时候,如何避免出现失效界面的情况是亟待解决的技术问题。
发明内容
本申请提供一种重新加载显示界面的方法和电子设备,能够在正在运行的应用同时显示多个界面的场景中,当旋转后重新加载显示界面的时候,避免出现失效界面的情况,提升用户使用体验。
第一方面,提供了一种重新加载显示界面的方法,该方法包括:在电子设备的屏幕上同时显示正在运行的第一应用的第一界面和第二界面,第二界面是在第一界面中的第一控件的触发下显示的;当检测到电子设备被旋转后,启动重新加载显示界面的进程;在重新加载显示界面的进程中,根据旋转前的第一界面的活动区域和第二界面的活动区域组成的整体活动区域,确定目标活动区域;在重新加载显示界面的进程中,根据目标活动区域重新加载显示界面。
在本申请技术方案中,主要通过结合了旋转前的两个活动区域所组成的整体来确定目标活动区域,从而避免了其中某个活动区域被误当成需要填充的部分被填充后失效。
与传统方案不同的是,在本申请实施例中,确定的目标活动区域(即目标activity区域)是根据旋转前两个activity区域组成的整体活动区域确定的,从而避免了其中在先的activity区域被误判为letterbox模式下的需要填充的区域。从而避免了失效界面的产生。
在letterbox模式中,在填充的时候,会先确定出activity区域,然后再将这个确定出的activity区域居中显示,并且屏幕中除了activity区域之外的两侧的部分分别填充为letterbox-left和letterbox-right。在没有AE模式的时候,这种方式不会出现问题,因为在传统的非AE模式的显示场景中,每个时刻只有一个activity区域,如果启动了一个新的activity区域就会直接覆盖前一个activity区域,所以在letterbox模式中,读取到的activity区域的值就是旋转前的最后一个启动的activity区域的数值。但是AE模式诞生后,在AE模式下,在letterbox模式中,读取的还是最后一个启动的activity区域的数值,就导致了之前已经启动的activity区域被遗漏了,结合此处,就是读取的是第二界面的活动区域的数值,却遗漏了第一界面的活动区域,导致了重新加载显示界面之后第一界面的失效。
而在本申请实施例中,在letterbox模式中,在填充的时候,确定出的目标活动区域是根据旋转前整体活动区域来确定的,就避免了对于第一界面的活动区域的遗漏,也就避免了第一界面在旋转后失效的问题。
结合第一方面,在第一方面的某些实现方式中,在重新加载显示界面的进程中,根据旋转前的第一界面的活动区域和第二界面的活动区域组成的整体活动区域,确定目标活动区域时,可以包括:判断电子设备的显示模式是否为平行窗口AE模式;当判定显示模式为AE模式时,根据旋转前的整体活动区域,确定目标活动区域;或者,当判定显示模式不是AE模式时,根据旋转前第一应用的最后一个显示界面的活动区域,确定目标活动区域。
在这种实现方式中,增加了对于AE模式的判定,只有在AE模式下才会根据整体活动区域来确定目标活动区域,而对于非AE模式,则保留原有的确定方式,将最后一个显示界面的活动区域确定为目标活动区域,此处最后一个显示界面的活动区域即为第二界面的活动区域。
需要说明的是,虽然前面显示的步骤中已经表明了第一应用是同时显示了两个界面,有两个活动区域的,但是,在重新加载显示界面的进程启动后,对于这个进程而言,还是需要获取当前显示模式,并且判断当前显示模式是否为AE模式之后再决定选择哪一种方式来确定目标活动区域,或者理解为,再决定读取哪个区域变量的数值作为目标活动区域的对应数值。
结合第一方面,在第一方面的某些实现方式中,在重新加载显示界面的进程中,根据旋转前的第一界面的活动区域和第二界面的活动区域组成的整体活动区域,确定目标活动区域时,可以包括:判断电子设备的显示模式是否为多窗口显示模式;当判定显示模式为多窗口显示模式时,执行判断电子设备的显示模式是否为AE模式的步骤;或者,当判定显示模式不是多窗口显示模式时,根据旋转前第一应用在启动后的第一个显示界面的活动区域,确定目标活动区域。
需要说明的是,AE模式是多窗口显示模式中的一种显示模式,所以还可以在AE模式的判定之前再增加一层多窗口显示模式的判定,也就是说,先判断是不是多窗口显示模式,只有在是多窗口显示模式的前提下才会进一步进行AE模式的判定和目标活动区域的确定,而对于非多窗口显示模式(也就是单窗口显示模式)就没有必要再进行AE模式的判定了。这样的两个层级的判定可以使得对于AE模式的筛选结果更加准确,并且针对不同的模式来确定目标活动区域的结果也更加精细,在避免了失效界面的基础上还实现了更加精细的显示。
结合第一方面,在第一方面的某些实现方式中,上述方法还包括:检测第一应用是否包括预设显示区域;当第一应用包括预设显示区域时,在重新加载显示界面的进程中,根据预设显示区域重新加载显示界面;或者,当第一应用不包括预设显示区域时,在重新加载显示界面的进程中,执行根据整体活动区域确定目标活动区域以及根据目标活动区域重新加载显示界面的步骤。
对于一些应用,如果是支持自动匹配屏幕尺寸的情况下,在重新加载显示界面的时候,会有一个存储单元用来存储这个预设的数值的,也就是,支持自动匹配屏幕尺寸的应用是包括一个预设显示区域的,这种情况下就没有必要执行后续确定目标活动区域和根据目标活动区域来重新加载界面的步骤了,而是直接根据这个预设显示区域加载界面即可。因此,在这种实现方式中,增加了对于运行的应用是否包括预设显示区域的判定,如果有的话,就按照预设显示区域重新加载界面,如果没有的话,才会确定并基于目标活动区域重新加载界面。这样的方式,对于有预设显示区域的应用而言,能够简化执行步骤,但应理解,在没有这个判定的情况下,即使对于有预设显示区域的应用而言,即使执行了后续步骤,也不会带来不好影响,依然能够避免失效界面,这种实现方式只是筛选出了这部分没有执行后续步骤的必要的应用,从而实现更加精细的显示控制,以及简化这部分应用的执行步骤。
结合第一方面,在第一方面的某些实现方式中,在重新加载显示界面的进程中,根据旋转前的第一界面的活动区域和第二界面的活动区域组成的整体活动区域,确定目标活动区域时,可以包括:检测第一应用是否包括预设显示区域;当判定第一应用不包括预设显示区域时,判断电子设备的显示模式是否为多窗口显示模式;当判定显示模式为多窗口显示模式时,判断电子设备的显示模式是否为平行窗口AE模式;当判定显示模式为AE模式时,根据旋转前的整体活动区域,确定目标活动区域。
在这种实现方式中,三个判定都有,只有在不包括预设显示区域且显示模式是多窗口显示模式,且显示模式具体是AE模式的时候才会根据旋转前的整体活动区域来确定目标活动区域。相比于上述只有三个判定中的部分判定的情况,在避免了失效界面的前体现,对于显示进程的控制更加精细,且充分避免了本申请方案对于其他场景的影响。
在这种实现方式的一个例子中,上述方法还包括:当判定显示模式不是AE模式时,根据旋转前所述第一应用的最后一个显示界面的活动区域,确定所述目标活动区域。在这个例子中,对于非AE模式进行了兜底处理。
在这种实现方式的另一个例子中,上述方法还包括:当判定显示模式不是多窗口显示模式时,根据旋转前所述第一应用在启动后的第一个显示界面的活动区域,确定所述目标活动区域。在这个例子中,对于非多窗口显示模式进行了兜底处理。
在这种实现方式的又一个例子中,上述方法还包括:当所述第一应用包括预设显示区域时,在所述重新加载显示界面的进程中,根据所述预设显示区域重新加载显示界面。在这个例子中,对于支持自动匹配屏幕尺寸的应用,也就是包括预设显示区域的应用进行了兜底处理。
结合第一方面,在第一方面的某些实现方式中,在重新加载显示界面的进程中,根据旋转前的第一界面的活动区域和第二界面的活动区域组成的整体活动区域,确定目标活动区域时,可以包括:对整体活动区域进行等比例缩放,使得缩放后的活动区域与电子设备的旋转后的屏幕匹配,从而得到目标活动区域。
在这种出现方式中,给出了将旋转前的整体活动区域等比例缩放后得到目标活动区域的方案。因为在旋转前后屏幕的宽和高互换了,所以整体活动区域旋转之后可能高度或宽度会超过屏幕尺寸,或者二者远小于屏幕尺寸,所以可以通过等比例缩放来适配旋转后的屏幕。
结合第一方面,在第一方面的某些实现方式中,在重新加载显示界面的进程中,根据旋转前的第一界面的活动区域和第二界面的活动区域组成的整体活动区域,确定目标活动区域时,可以包括:从存储屏幕总显示区域的大小的存储单元中读取总显示区域的大小,总显示区域包括第一界面的活动区域和第二界面的活动区域;将总显示区域的大小进行等比例缩放后,得到目标活动区域的大小。
对于电子设备而言,每个活动区域的大小都会保存,但是可能会有覆盖机制的电子设备导致,只会存储一个活动区域,所以对于这样的情况就没有办法采用将两个活动区域的大小都读取出来然后进行叠加运算来得到整体活动区域了。但是经分析发现,电子设备还会有特定的存储单元来存储整体显示区域(总显示区域)的大小,而整体显示区域就会包括这两个活动区域,或者说整体显示区域的大小在只有两个活动区域的情况下,就是这两个活动区域的总占屏面积。所以可以直接从存储屏幕总显示区域的大小的存储单元中读取总显示区域的大小,然后将这个总显示区域等比例缩放就可以得到目标活动区域了。
如果电子设备会存储多个活动区域的大小的时候,就可以先读取第一界面的活动区域的数值和第二界面的活动区域的数值,然后将二者叠加之后的总和作为目标活动区域的数值。应理解,这个例子中,数值是指宽和高,第一界面的活动区域的宽度与第二界面的活动区域的宽度之和就是目标活动区域的宽度,第一界面的活动区域的高度与第二界面的活动区域的高度之和就是目标活动区域的高度。这种方式增加了计算的步骤,且需要能够获取两个活动区域的数值才可以。
结合第一方面,在第一方面的某些实现方式中,上述方法还包括:当自动旋转功能为开启状态时,当检测到电子设备被旋转后,启动重新加载显示界面的进程。
也就是说,为检测旋转和重新加载的步骤增加了一个执行条件,只有在自动旋转功能为开启状态的时候才会执行。因为如果没有开启自动旋转功能,即使电子设备旋转了,也不会触发重新加载显示界面的流程,也就不存在着重新适配屏幕尺寸进行显示的需求了。
第二方面,提供了一种执行重新加载显示界面的转场动效的装置,该装置包括由软件和/或硬件组成的用于执行第一方面的任意一种方法的单元。
第三方面,提供了一种电子设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,当处理器执行计算机程序时使得该电子设备能够实现第一方面的任意一种方法。
第四方面,提供了一种芯片,包括处理器,该处理器用于读取并执行存储在存储器中的计算机程序,当计算机程序被处理器执行时使得该芯片所在的电子设备能够实现第一方面的任意一种方法。
可选地,该芯片还包括存储器,存储器与处理器电连接。
可选地,该芯片还可以包括通信接口。
第五方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,当计算机程序被电子设备执行时能够实现第一方面的任意一种方法。
第六方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,当计算机程序被电子设备执行时能够实现第一方面的任意一种方法。
附图说明
图1是一种letterbox模式下重新加载显示界面的示意图。
图2是AE模式的示意图。
图3是传统方案中AE模式下重新加载显示界面的示意图。
图4是本申请实施例的一种重新加载显示界面的示意图。
图5是本申请实施例的一种重新加载显示界面的方法的示意性流程图。
图6是本申请实施例的一种确定目标活动区域的数值的方法的示意性流程图。
图7是本申请实施例的一种重新加载显示界面的方法的示意性流程图。
图8是本申请实施例的一种执行重新加载显示界面的装置的示意图。
图9是本申请实施例的一种电子设备的硬件结构示意图。
具体实施方式
下面结合附图对本申请实施例的方案进行介绍。
为了便于理解本申请实施例的方案,首先结合图1和图2对电子设备的两个与显示相关的工作模式进行介绍。
图1是一种letterbox模式下重新加载显示界面的示意图。如图1所示,在电子设备A上正在运行着应用A,在界面101中可以看出,应用A的界面A1是以竖向方向显示的,在自动旋转功能开启后,当用户旋转了电子设备A,此时后台系统就需要重新加载显示界面,使得界面的显示方向符合旋转后用户的使用需求。
对于支持自动匹配电子设备屏幕尺寸的应用而言,旋转后,界面A1就会铺满整个屏幕,但是这也会导致显示的画面会存拉伸在变形,不利于观看,所以这就使得很多应用不支持自动匹配电子设备屏幕进行显示,而是必须按照应用特定的宽高比进行显示,就会利用letterbox模式显示界面,从而出现界面102所示情况,也就是说,界面102示出了letterbox模式下的显示情况。在letterbox模式下,应用的界面显示区域之外的其他区域会进行填充,由于界面会按照最大高度显示,而且界面会居中显示,以更符合用户的使用需求,所以只需要填充界面的左侧空白和右侧空白,也就是界面102中所示的,中间的应用A的界面A1部分为活动(activity)区域,左侧为左填充区(letterbox-left),右侧为右填充区(letterbox-right)。填充区是重新创建图层进行填充,可以理解为是在填充区上覆盖了一个新图层,这个新图层可以设置透明度和模糊度等参数。
简而言之,很多应用并未对不同尺寸的电子设备进行显示界面的适配,而是会以特定的宽高比显示,当应用的宽高比和它的容器比例不兼容的时候,就会以letterbox模式打开,从而出现界面102中所示的,应用自身的显示区域为activity区域,而其他非显示区域的部分系统则会创建两个图层进行填充,这两个图层即为letterbox-left和letterbox-right,而且这两个图层可以设置透度和模糊度等参数。
图2是平行窗口(activityembedding,AE)模式的示意图。平行窗口还可以称之为并列窗口、并列视窗、平行视窗、并行窗口或并行视窗等。AE模式可以理解为是同一个应用在运行时会同时显示多个界面的显示模式。
需要说明的是,在本申请实施例中,AE模式为多窗口显示模式中的一种显示模式。在多窗口显示模式中均会出现同一个屏幕上有多个窗口的情况,多窗口显示模式还可以包括分屏显示模式、弹窗显示模式或者未来还可能出现其他多窗口模式。对于分屏显示模式和弹窗显示模式而言,不同窗口中显示的是不同应用的界面,而且不同窗口之间,界面上的操作不会互相影响。例如,对于两个分屏的分屏模式而言,两个分屏上是两个分别运行的应用的界面,当在其中一个窗口的界面上进行交互操作的时候,不会影响另一个窗口的界面显示,因为这是两个独立运行的应用的窗口。但是,AE模式中,两个显示界面是平行关系,也就是说,两个界面是同一个应用的两个层级的界面,所以在任何一个界面上的操作都可以触发该应用的后台响应。
换而言之,为了充分利用大屏幕的显示区域,诞生了AE模式,实现同一应用内多个activity同时显示界面。对于传统的直板机而言,如果先启动Activity1再启动Activity2,则Activity2会覆盖Activity1,即Activity2启动后用户看到的只有Activity2。而在大屏的AE模式下,如果先启动Activity1再启动Activity2,Activity2启动后用户可以同时看到Activity1和Activity2两个区域中的两个界面,下面结合图2进行解释。
图2中的界面201和界面202示出了一种可能的AE模式的显示过程,在界面201中已经启动了电子设备B中的应用B,在AE模式下先启动了Activity1,在Activity1区域中显示的是应用B的界面B1,假设,用户点击了Activity1中的界面B1中的控件M,就可以加载出界面B2。对于传统的直板机而言,界面B2会覆盖掉界面B1。但是在AE模式中,会同步显示界面B1和界面B2。所以,当用户点击了控件M后,会出现界面202所示情况。在界面202中,电子设备B的屏幕上包括两个活动区域,分别为Activity1和Activity2。在Activity1区域中显示的是应用B的界面B1,在Activity2区域中显示的是应用B的界面B2。
图2中的界面203和界面204示出了一种可能的AE模式的显示过程,在界面203中已经启动了电子设备C中的应用C,在正常显示模式下先启动了Activity3,在Activity3区域中显示的是应用C的界面C1,假设,用户点击了Activity3中的界面C1中的控件M,就可以加载出界面C2。对于传统的直板机而言,界面C2会覆盖掉界面C1。但是在此处的例子中,点击控件M后,在加载界面C2的时候,会触发启动AE模式,使得同步显示界面C1和界面C2。所以,当用户点击了控件M后,会出现界面204所示情况。在界面204中,电子设备C的屏幕上包括两个活动区域,分别为Activity3和Activity4。在Activity3区域中显示的是应用C的界面C1,在Activity4区域中显示的是应用C的界面C2。
应理解,图2指示示例了两种可能的AE模式的方案,在实际中,还可能是其他情况,例如,对于两个activity区域的大小关系可以不同,图2中是以Activity1小于Activity2为例的,但实际中二者还可以相等,或者Activity1大于Activity2,不再逐一列举。
还应理解,AE模式是随着技术发展,出现了折叠屏之后,屏幕变大,使得可容纳的显示内容更多之后才应运而生的一种显示模式。对于传统小屏幕的直板机而言,虽然也可以采用AE模式,但因为屏幕太小,会导致两个界面都很小,用户看不清晰界面中的内容,所以目前AE模式主要应用于较大屏幕的电子设备,对于图1所示这类小屏幕的电子设备上几乎不会采用。但是对于letterbox模式则是无论屏幕大小都已经在广泛应用了。
图3是传统方案中AE模式下重新加载显示界面的示意图。如图3中界面301所示,在电子设备D的屏幕中正在以AE模式运行着应用D,此时在Activity1中显示的是界面D1,在Activity2中显示的是界面D2。在自动旋转功能启动的情况下,假设此时电子设备D被旋转到界面302所示的方向,系统就需要重新加载显示界面,而由于应用D不支持自动适配屏幕尺寸,就触发了letterbox模式,对非activity区域进行填充。但是,对于传统方案而言,是每个时刻都只有一个activity,所以在letterbox模式下进行填充的时候,就导致,只有Activity2被作为了activity继续显示,但是Activity1却被当成了左填充区,创建了一个新图层覆盖了原本的Activity1区域,此处以新图层为透明图层为例,而右填充区则在letterbox模式下正常填充了一个透明图层,并且由于此处没有底层画面,所以透明图层下就是黑色的屏幕底色。
此时,假设用户在界面的302中的界面D1中点击控件Q,就没有响应了,因为界面D1所在的区域被当成letterbox-left进行填充了,所以点击后,呈现的就是界面303所示的结果,没有任何响应,也就是跟界面302相比,没有变化。
还应理解,如果填充的是非透明的纯色图层,界面302中也可能出现的是左填充区是纯色的颜色,已经看不清界面D1的画面的情况,但依然可以归为界面D1成了失效界面。
针对图3所示的问题,也就是说,在正在运行的应用同时显示多个界面的场景中,当旋转后重新加载显示界面的时候,出现失效界面的情况,本申请实施例提供了一种新的重新加载显示界面的方案,通过在重新加载显示界面的进程中,根据多个活动区域来确定目标活动区域来解决了Activity1区域被误填充的问题,从而避免了Activity1变成失效界面。
图4是本申请实施例的一种重新加载显示界面的示意图。为了便于与图3所示的传统方案比较,图4中依然以电子设备上运行应用D为例。如图4中界面401所示,在电子设备D的屏幕中正在以AE模式运行着应用D,此时在Activity1中显示的是界面D1,在Activity2中显示的是界面D2。在自动旋转功能启动的情况下,假设此时电子设备D被旋转到界面402所示的方向,系统就需要重新加载显示界面,而由于应用D不支持自动适配屏幕尺寸,就触发了letterbox模式,对非activity区域进行填充。此处采用的是本申请实施例的方案,所以在letterbox模式下进行填充的时候,确定目标活动区域的时候,Activity1和Activity2都作为了activity,也就是说,Activity1和Activity2被作为了一个整体,所以重新确定的目标活动区域中包括了Activity1和Activity2,从而确定的左填充区和右填充区都不再影响任意一个活动区域。
此时,假设用户在界面的402中的界面D1中点击控件Q,就会进一步打开界面D3,如界面404所示。但应理解,进一步打开的界面D3也可能是显示在Activity2,这取决于电子设备的厂商的自主设定,并不会影响本申请实施例的方案的实现效果。
图5是本申请实施例的一种重新加载显示界面的方法的示意性流程图。下面对图5所示各个步骤进行介绍。
S501、在电子设备的屏幕上同时显示正在运行的第一应用的第一界面和第二界面。
第二界面是在第一界面中的第一控件的触发下显示的。
从步骤S501可以看出,电子设备正在以AE模式运行第一应用,但是应理解,这并不是说,在后续重新加载显示界面的进程中就不需要进行AE模式的判断了,而且这个判断步骤,在本申请实施例中,是需要在启动重新加载显示界面的进程这个步骤的触发下执行的,因为没有重新加载的需求就没有判断是不是AE模式的必要。
该电子设备可以是手机、折叠屏手机、平板电脑等支持AE模式和自动旋转功能的电子设备。
第一应用可以是任意应用。但应理解,对于支持自动适配屏幕尺寸的应用而言,并不会存在误填充的问题,所以本申请主要针对的是不支持自动适配屏幕尺寸的应用。
S502、当检测到电子设备被旋转后,启动重新加载显示界面的进程。
当电子设备被旋转后,就可以重新加载显示界面了,所以可以触发这个进程的启动。
在一种实现方式中,上述方法还包括:当自动旋转功能为开启状态时,当检测到电子设备被旋转后,启动重新加载显示界面的进程。
也就是说,为检测旋转和重新加载的步骤增加了一个执行条件,只有在自动旋转功能为开启状态的时候才会执行。因为如果没有开启自动旋转功能,即使电子设备旋转了,也不会触发重新加载显示界面的流程,也就不存在着重新适配屏幕尺寸进行显示的需求了。
S503、在重新加载显示界面的进程中,根据旋转前的第一界面的活动区域和第二界面的活动区域组成的整体活动区域,确定目标活动区域。
与传统方案不同的是,在本申请实施例中,确定的目标活动区域(即目标activity区域)是根据旋转前两个activity区域组成的整体活动区域确定的,从而避免了其中在先的activity区域被误判为letterbox模式下的需要填充的区域。从而避免了失效界面的产生。
在letterbox模式中,在填充的时候,会先确定出activity区域,然后再将这个确定出的activity区域居中显示,并且屏幕中除了activity区域之外的两侧的部分分别填充为letterbox-left和letterbox-right。在没有AE模式的时候,这种方式不会出现问题,因为在传统的非AE模式的显示场景中,每个时刻只有一个activity区域,如果启动了一个新的activity区域就会直接覆盖前一个activity区域,所以在letterbox模式中,读取到的activity区域的值就是旋转前的最后一个启动的activity区域的数值,从而出现的就是图1所示的结果。但是出现了AE模式后,在AE模式下,在letterbox模式中,读取的还是最后一个启动的activity区域的数值,就导致了之前已经启动的activity区域被遗漏了,结合此处,就是读取的是第二界面的活动区域的数值,却遗漏了第一界面的活动区域,导致了重新加载显示界面之后第一界面的失效。
而在本申请实施例中,在letterbox模式中,在填充的时候,确定出的目标活动区域是根据旋转前整体活动区域来确定的,就避免了对于第一界面的活动区域的遗漏,也就避免了第一界面在旋转后失效的问题。
在一种实现方式中,步骤S503可以包括:
判断电子设备的显示模式是否为平行窗口AE模式;当判定显示模式为AE模式时,根据旋转前的整体活动区域,确定目标活动区域;或者,当判定显示模式不是AE模式时,根据旋转前第一应用的最后一个显示界面的活动区域,确定目标活动区域。
在这种实现方式中,增加了对于AE模式的判定,只有在AE模式下才会根据整体活动区域来确定目标活动区域,而对于非AE模式,则保留原有的确定方式,将最后一个显示界面的活动区域确定为目标活动区域,此处最后一个显示界面的活动区域即为第二界面的活动区域。
需要说明的是,虽然前面显示的步骤中已经表明了第一应用是同时显示了两个界面,有两个活动区域的,但是,在重新加载显示界面的进程启动后,对于这个进程而言,还是需要获取当前显示模式,并且判断当前显示模式是否为AE模式之后再决定选择哪一种方式来确定目标活动区域,或者理解为,再决定读取哪个区域变量的数值作为目标活动区域的对应数值。
在一种实现方式中,步骤S503可以包括:
判断电子设备的显示模式是否为多窗口显示模式;
当判定显示模式为多窗口显示模式时,执行判断电子设备的显示模式是否为AE模式的步骤;或者,
当判定显示模式不是多窗口显示模式时,根据旋转前第一应用在启动后的第一个显示界面的活动区域,确定目标活动区域。
如上所述,AE模式是多窗口显示模式中的一种显示模式,所以还可以在AE模式的判定之前再增加一层多窗口显示模式的判定,也就是说,先判断是不是多窗口显示模式,只有在是多窗口显示模式的前提下才会进一步进行AE模式的判定和目标活动区域的确定,而对于非多窗口显示模式(也就是单窗口显示模式)就没有必要再进行AE模式的判定了。这样的两个层级的判定可以使得对于AE模式的筛选结果更加准确,并且针对不同的模式来确定目标活动区域的结果也更加精细,在避免了失效界面的基础上还实现了更加精细的显示。
在另一种实现方式中,上述方法还包括:
检测第一应用是否包括预设显示区域;
当第一应用包括预设显示区域时,在重新加载显示界面的进程中,根据预设显示区域重新加载显示界面;或者,
当第一应用不包括预设显示区域时,在重新加载显示界面的进程中,执行根据整体活动区域确定目标活动区域以及根据目标活动区域重新加载显示界面的步骤。
对于一些应用,如果是支持自动匹配屏幕尺寸的情况下,在重新加载显示界面的时候,会有一个存储单元用来存储这个预设的数值的,也就是,支持自动匹配屏幕尺寸的应用是包括一个预设显示区域的,这种情况下就没有必要执行后续确定目标活动区域和根据目标活动区域来重新加载界面的步骤了,而是直接根据这个预设显示区域加载界面即可。因此,在这种实现方式中,增加了对于运行的应用是否包括预设显示区域的判定,如果有的话,就按照预设显示区域重新加载界面,如果没有的话,才会确定并基于目标活动区域重新加载界面。这样的方式,对于有预设显示区域的应用而言,能够简化执行步骤,但应理解,在没有这个判定的情况下,即使对于有预设显示区域的应用而言,即使执行了后续步骤,也不会带来不好影响,依然能够避免失效界面,这种实现方式只是筛选出了这部分没有执行后续步骤的必要的应用,从而实现更加精细的显示控制,以及简化这部分应用的执行步骤。
在另一种实现方式中,步骤S503可以包括:
检测第一应用是否包括预设显示区域;
当判定第一应用不包括预设显示区域时,判断电子设备的显示模式是否为多窗口显示模式;
当判定显示模式为多窗口显示模式时,判断电子设备的显示模式是否为平行窗口AE模式;
当判定显示模式为AE模式时,根据旋转前的整体活动区域,确定目标活动区域。
在这种实现方式中,三个判定都有,只有在不包括预设显示区域且显示模式是多窗口显示模式,且显示模式具体是AE模式的时候才会根据旋转前的整体活动区域来确定目标活动区域。相比于上述只有三个判定中的部分判定的情况,在避免了失效界面的前体现,对于显示进程的控制更加精细,且充分避免了本申请方案对于其他场景的影响。
在这种实现方式的一个例子中,上述方法还包括:当判定显示模式不是AE模式时,根据旋转前所述第一应用的最后一个显示界面的活动区域,确定所述目标活动区域。在这个例子中,对于非AE模式进行了兜底处理。
在这种实现方式的另一个例子中,上述方法还包括:当判定显示模式不是多窗口显示模式时,根据旋转前所述第一应用在启动后的第一个显示界面的活动区域,确定所述目标活动区域。在这个例子中,对于非多窗口显示模式进行了兜底处理。
在这种实现方式的又一个例子中,上述方法还包括:当所述第一应用包括预设显示区域时,在所述重新加载显示界面的进程中,根据所述预设显示区域重新加载显示界面。在这个例子中,对于支持自动匹配屏幕尺寸的应用,也就是包括预设显示区域的应用进行了兜底处理。
在一种实现方式中,步骤S503可以包括:对整体活动区域进行等比例缩放,使得缩放后的活动区域与电子设备的旋转后的屏幕匹配,从而得到目标活动区域。
在这种出现方式中,给出了将旋转前的整体活动区域等比例缩放后得到目标活动区域的方案。因为在旋转前后屏幕的宽和高互换了,所以整体活动区域旋转之后可能高度或宽度会超过屏幕尺寸,或者二者远小于屏幕尺寸,所以可以通过等比例缩放来适配旋转后的屏幕。例如,对于上述图1-图4的例子中,都是从竖屏旋转到横屏的情况,而且以需要缩小为例,但是对于上述图1-图4的例子中,如果是横屏旋转到竖屏的情况,那就可能需要放大了。而对于其他情况,还可能竖屏旋转到横屏的时候需要放大,而横屏旋转到竖屏的时候需要缩小。但无论是放大还是缩小的情况,都可以利用上述实现方式中的等比例缩放达到目的。
在一种实现方式中,步骤S503可以包括:
从存储屏幕总显示区域的大小的存储单元中读取总显示区域的大小,总显示区域包括第一界面的活动区域和第二界面的活动区域;
将总显示区域的大小进行等比例缩放后,得到目标活动区域的大小。
对于电子设备而言,每个活动区域的大小都会保存,但是可能会有覆盖机制的电子设备导致,只会存储一个活动区域,所以对于这样的情况就没有办法采用将两个活动区域的大小都读取出来然后进行叠加运算来得到整体活动区域了。但是经分析发现,电子设备还会有特定的存储单元来存储整体显示区域(总显示区域)的大小,而整体显示区域就会包括这两个活动区域,或者说整体显示区域的大小在只有两个活动区域的情况下,就是这两个活动区域的总占屏面积。所以可以直接从存储屏幕总显示区域的大小的存储单元中读取总显示区域的大小,然后将这个总显示区域等比例缩放就可以得到目标活动区域了。
如果电子设备会存储多个活动区域的大小的时候,就可以先读取第一界面的活动区域的数值和第二界面的活动区域的数值,然后将二者叠加之后的总和作为目标活动区域的数值。应理解,这个例子中,数值是指宽和高,第一界面的活动区域的宽度与第二界面的活动区域的宽度之和就是目标活动区域的宽度,第一界面的活动区域的高度与第二界面的活动区域的高度之和就是目标活动区域的高度。这种方式增加了计算的步骤,且需要能够获取两个活动区域的数值才可以。
S504、在重新加载显示界面的进程中,根据目标活动区域重新加载显示界面。
在图5所示方案中,主要通过结合了旋转前的两个活动区域所组成的整体来确定目标活动区域,从而避免了其中某个活动区域被误当成需要填充的部分被填充后失效。
图6是本申请实施例的一种确定目标活动区域的数值的方法的示意性流程图。图6可以看成是步骤S502和步骤S503的一个示例,其中步骤S601可以看成是步骤S502的一个示例,步骤S602-S608可以看成是步骤S503的一个示例。
S601、启动重新加载显示界面的进程。
S602、判断预设显示区域的数值是否为空,当判断结果为是时转为执行步骤S603,当判断结果为否时转为执行步骤S606。
此处的预设显示区域即为正在运行的应用的预设显示区域,在应用支持自动适配屏幕尺寸的时候,这个预设显示区域就对应整个屏幕区域。
例如可以是某个特定存储单元会存储这个数值。当从这个特定存储单元中读取数值的时候,读取为空,就说明没有数值,也就是这个应用是不包括预设显示区域的,而从这个特定存储单元中读取数值的时候,读取出了数值,那这个读取出来的数值就是预设显示区域的数值。
S603、判断显示模式是否为多窗口显示模式,当判断结果为是时转为执行步骤S604,当判断结果为否时转为执行步骤S607。
如上所述,AE模式是多窗口显示模式中的一种,多窗口显示模式还可以包括分屏显示模式和弹窗显示模式等其它多个窗口同时显示的情况。
S604、判断显示模式是否为AE模式,当判断结果为是时转为执行步骤S605,当判断结果为否时转为执行步骤S608。
S605、将总显示区域值确定为目标活动区域对应的初始数值。
也就是说,在AE模式的情况下,将旋转前的总显示区域的数值作为目标活动区域的初始数值。之后这个目标活动区域对应的初始数值经过等比例缩放到跟旋转后的屏幕匹配后就可以得到上述目标活动区域了。
S606、将目标活动区域确定为预设显示区域值。
也就是说,在预设显示区域的数值为非空(即有预设显示区域的数值)的情况下,将预设显示区域直接确定为上述目标活动区域。
S607、将根活动(rootactivity)区域值确定为目标活动区域对应的初始数值。
也就是说,在非多窗口模式的情况下,将旋转前的应用启动后的第一个显示界面活动区域的数值作为目标活动区域的初始数值。之后这个目标活动区域对应的初始数值经过等比例缩放到跟旋转后的屏幕匹配后就可以得到上述目标活动区域了。应理解,第一界面未必是第一个显示界面。
S608、将当前活动区域值确定为目标活动区域对应的初始数值。
在旋转发生的时候的活动区域即为上述当前活动区域。之后这个目标活动区域对应的初始数值经过等比例缩放到跟旋转后的屏幕匹配后就可以得到上述目标活动区域了。应理解,在本申请实施例中以第二界面就是旋转前的最后一个显示界面为例。
图7是本申请实施例的一种重新加载显示界面的方法的示意性流程图。图7可以看成是图5所示方法的一个示例,下面对图7所示各个步骤进行介绍。
S701、传感器(Sensor)在检测到旋转之后向窗口管理系统(windows managementsystem,WMS)上报旋转事件。S701可以看成是步骤S502中检测电子设备是否被旋转的过程的示例。
S702、WMS通知任意应用(WhatsApp,也就是正在运行的应用)屏幕显示状态发生的变化。
此处的任意应用可以表示为,可以看成上述第一应用的一例。
屏幕显示状态的变化可以包括横屏变竖屏或竖屏变横屏。
S703、WhatsApp告知框架侧WMS显示策略为:不随屏幕旋转改变宽高比。
也就是说不支持自动匹配屏幕尺寸的情况。可以对应步骤S602中预设显示区域为空的情况。
S704、WMS计算应用的非显示区域,并创建相应的图层,指示显示模块(surfaceflinger)进行填充显示。
非显示区域即目标活动区域之外的区域,也可以理解为在letterbox模式中即将被填充的区域。
应理解,在此处计算非显示区域的时候,就是将整个显示屏幕减去目标活动区域之后的部分就是非显示区域了,也就是会被填充的部分了。由于此处目标活动区域不再是传统方案的只根据最后一个activity确定,而是根据两个同时显示的activity确定,使得目标活动区域准确,进而非显示区域也会准确,也就避免了某个activity被错当成了非显示区域的问题了,从而避免了在该activity的界面失效。
上文主要结合附图对本申请实施例的方法进行了介绍。应理解,虽然如上所述的各实施例所涉及的流程图中的各个步骤依次显示,但是这些步骤并不是必然按照图中所示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。下面结合附图对本申请实施例的装置进行介绍。
图8是本申请实施例的一种执行重新加载显示界面的装置的示意图。如图8所示,该装置2000包括显示单元2001和处理单元2002。该装置2000可以是集成在手机、平板电脑、触屏笔记本电脑等电子设备中。
该装置2000能够用于执行上文任意一种重新加载显示界面的方法。例如,显示单元2001可用于执行步骤S501,处理单元2002可用于执行步骤S502-S504。又例如,处理单元2002可用于执行图6所示各个步骤。该装置2000还可以用于执行图4所示过程,以及可以用于执行图7所示各个步骤。
在一种实现方式中,装置2000还可以包括存储单元,用于存储相关数据。该存储单元可以是集成在上述任意一个单元中,也可以是独立于上述所有单元之外的单元。
图9是本申请实施例的一种电子设备的硬件结构的示意图。如图9所示,电子设备900可以包括处理器910,外部存储器接口920,内部存储器921,通用串行总线(universalserial bus,USB)接口930,充电管理模块940,电源管理模块941,电池942,天线1,天线2,移动通信模块950,无线通信模块960,音频模块970,扬声器970A,受话器970B,麦克风970C,耳机接口970D,传感器模块980,按键990,马达991,指示器992,摄像头993,显示屏994,以及用户标识模块(subscriber identification module,SIM)卡接口995等。其中,传感器模块980可以包括压力传感器980A,陀螺仪传感器980B,气压传感980C,磁传感器980D,加速度传感器980E,距离传感器980F,接近光传感器980G,指纹传感器980H,温度传感器980J,触摸传感器980K,环境光传感器980L,骨传导传感器980M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备900的具体限定。在本申请另一些实施例中,电子设备900可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
示例性地,图9所示的处理器910可以包括一个或多个处理单元,例如:处理器910可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备900的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器910中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器910中的存储器为高速缓冲存储器。该存储器可以保存处理器910刚用过或循环使用的指令或数据。如果处理器910需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器910的等待时间,因而提高了系统的效率。
在一些实施例中,MIPI接口可以被用于连接处理器910与显示屏994,摄像头993等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(display serial interface,DSI)等。处理器910和摄像头993通过CSI接口通信,实现电子设备900的拍摄功能。处理器910和显示屏994通过DSI接口通信,实现电子设备900的显示功能。
在一些实施例中,GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。GPIO接口可以用于连接处理器910与摄像头993,显示屏994,无线通信模块960,音频模块970,传感器模块980等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备900的结构限定。在本申请另一些实施例中,电子设备900也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
电子设备900通过GPU,显示屏994,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏994和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器910可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏994用于显示图像,视频等。显示屏994包括显示面板。在一些实施例中,电子设备900可以包括1个或N个显示屏994,N为大于1的正整数。
内部存储器921可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器910通过运行存储在内部存储器921的指令,从而执行电子设备900的各种功能应用以及数据处理。内部存储器921可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备900使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器921可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
压力传感器980A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器980A可以设置于显示屏994。压力传感器980A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器980A,电极之间的电容改变。电子设备900根据电容的变化确定压力的强度。当有触摸操作作用于显示屏994,电子设备900根据压力传感器980A检测所述触摸操作强度。电子设备900也可以根据压力传感器980A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如,当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
加速度传感器980E可检测电子设备900在各个方向上(一般为三轴)加速度的大小。当电子设备900静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
触摸传感器980K,也称“触控面板”。触摸传感器980K可以设置于显示屏994,由触摸传感器980K与显示屏994组成触摸屏,也称“触控屏”。触摸传感器980K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏994提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器980K也可以设置于电子设备900的表面,与显示屏994所处的位置不同。
按键990包括开机键,音量键等。按键990可以是机械按键。也可以是触摸式按键。电子设备900可以接收按键输入,产生与电子设备900的用户设置以及功能控制有关的键信号输入。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种电子设备,该电子设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时使得所述电子设备可实现上述任意方法中的步骤。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被电子设备执行时可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序,当计算机程序被电子设备执行时可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/电子设备的任何实体或装置、记录介质、计算机存储器、只读存储器(read-only memory,ROM)、随机存取存储器(random accessmemory,RAM)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种重新加载显示界面的方法,其特征在于,包括:
在电子设备的屏幕上同时显示正在运行的第一应用的第一界面和第二界面,所述第二界面是在所述第一界面中的第一控件的触发下显示的;
当检测到所述电子设备被旋转后,启动重新加载显示界面的进程;
在所述重新加载显示界面的进程中,根据旋转前的所述第一界面的活动区域和所述第二界面的活动区域组成的整体活动区域,确定目标活动区域;
在所述重新加载显示界面的进程中,根据所述目标活动区域重新加载显示界面。
2.根据权利要求1所述的方法,其特征在于,所述在所述重新加载显示界面的进程中,根据旋转前的所述第一界面的活动区域和所述第二界面的活动区域组成的整体活动区域,确定目标活动区域,包括:
判断所述电子设备的显示模式是否为平行窗口AE模式;
当判定显示模式为AE模式时,根据旋转前的所述整体活动区域,确定目标活动区域;或者,
当判定显示模式不是AE模式时,根据旋转前所述第一应用的最后一个显示界面的活动区域,确定所述目标活动区域。
3.根据权利要求2所述的方法,其特征在于,所述在所述重新加载显示界面的进程中,根据旋转前的所述第一界面的活动区域和所述第二界面的活动区域组成的整体活动区域,确定目标活动区域,包括:
判断所述电子设备的显示模式是否为多窗口显示模式;
当判定显示模式为多窗口显示模式时,执行判断所述电子设备的显示模式是否为AE模式的步骤;或者,
当判定显示模式不是多窗口显示模式时,根据旋转前所述第一应用在启动后的第一个显示界面的活动区域,确定所述目标活动区域。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
检测所述第一应用是否包括预设显示区域;
当所述第一应用包括预设显示区域时,在所述重新加载显示界面的进程中,根据所述预设显示区域重新加载显示界面;或者,
当所述第一应用不包括预设显示区域时,在所述重新加载显示界面的进程中,执行根据所述整体活动区域确定所述目标活动区域以及根据所述目标活动区域重新加载显示界面的步骤。
5.根据权利要求1所述的方法,其特征在于,所述在所述重新加载显示界面的进程中,根据旋转前的所述第一界面的活动区域和所述第二界面的活动区域组成的整体活动区域,确定目标活动区域,包括:
检测所述第一应用是否包括预设显示区域;
当判定所述第一应用不包括预设显示区域时,判断所述电子设备的显示模式是否为多窗口显示模式;
当判定显示模式为多窗口显示模式时,判断所述电子设备的显示模式是否为平行窗口AE模式;
当判定显示模式为AE模式时,根据旋转前的所述整体活动区域,确定所述目标活动区域。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述在所述重新加载显示界面的进程中,根据旋转前的所述第一界面的活动区域和所述第二界面的活动区域组成的整体活动区域,确定目标活动区域,包括:
对所述整体活动区域进行等比例缩放,使得缩放后的活动区域与所述电子设备的旋转后的屏幕匹配,从而得到所述目标活动区域。
7.根据权利要求1至5中任一项所述的方法,其特征在于,所述在所述重新加载显示界面的进程中,根据旋转前的所述第一界面的活动区域和所述第二界面的活动区域组成的整体活动区域,确定目标活动区域,包括:
从存储屏幕总显示区域的大小的存储单元中读取总显示区域的大小,所述总显示区域包括所述第一界面的活动区域和所述第二界面的活动区域;
将所述总显示区域的大小进行等比例缩放后,得到所述目标活动区域的大小。
8.根据权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括:
当自动旋转功能为开启状态时,当检测到所述电子设备被旋转后,启动所述重新加载显示界面的进程。
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时使得所述电子设备实现如权利要求1至8中任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被电子设备执行时实现如权利要求1至8中任一项所述的方法。
CN202311253202.2A 2023-09-26 2023-09-26 重新加载显示界面的方法和电子设备 Pending CN117519865A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311253202.2A CN117519865A (zh) 2023-09-26 2023-09-26 重新加载显示界面的方法和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311253202.2A CN117519865A (zh) 2023-09-26 2023-09-26 重新加载显示界面的方法和电子设备

Publications (1)

Publication Number Publication Date
CN117519865A true CN117519865A (zh) 2024-02-06

Family

ID=89757351

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311253202.2A Pending CN117519865A (zh) 2023-09-26 2023-09-26 重新加载显示界面的方法和电子设备

Country Status (1)

Country Link
CN (1) CN117519865A (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1191768A2 (de) * 2000-09-22 2002-03-27 Alcatel Verfahren zur Darstellung von Abbildungen auf einem Bildschirm, Bildschirmeinheit und Telekommunikationsendgerät hierfür
CN104035704A (zh) * 2013-03-07 2014-09-10 北京三星通信技术研究有限公司 分屏操作的方法及装置
US20170329490A1 (en) * 2016-05-12 2017-11-16 Yandex Europe Ag Computer-implemented method of generating a content recommendation interface
CN107357540A (zh) * 2017-06-30 2017-11-17 维沃移动通信有限公司 一种显示方向的调整方法及移动终端
CN112130742A (zh) * 2019-06-25 2020-12-25 华为技术有限公司 一种移动终端的全屏显示方法及设备
US20220058030A1 (en) * 2017-10-10 2022-02-24 Amlogic (Shanghai) Co., Ltd. Intelligent device and method for controlling boot screen of the intelligent device
CN114397982A (zh) * 2018-11-26 2022-04-26 华为技术有限公司 一种应用显示方法及电子设备
CN114816602A (zh) * 2021-01-27 2022-07-29 华为技术有限公司 应用显示方法、装置、芯片系统、介质及程序产品
CN115328358A (zh) * 2021-04-22 2022-11-11 华为技术有限公司 一种显示方法及相关装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1191768A2 (de) * 2000-09-22 2002-03-27 Alcatel Verfahren zur Darstellung von Abbildungen auf einem Bildschirm, Bildschirmeinheit und Telekommunikationsendgerät hierfür
CN104035704A (zh) * 2013-03-07 2014-09-10 北京三星通信技术研究有限公司 分屏操作的方法及装置
US20170329490A1 (en) * 2016-05-12 2017-11-16 Yandex Europe Ag Computer-implemented method of generating a content recommendation interface
CN107357540A (zh) * 2017-06-30 2017-11-17 维沃移动通信有限公司 一种显示方向的调整方法及移动终端
US20220058030A1 (en) * 2017-10-10 2022-02-24 Amlogic (Shanghai) Co., Ltd. Intelligent device and method for controlling boot screen of the intelligent device
CN114397982A (zh) * 2018-11-26 2022-04-26 华为技术有限公司 一种应用显示方法及电子设备
CN112130742A (zh) * 2019-06-25 2020-12-25 华为技术有限公司 一种移动终端的全屏显示方法及设备
CN114816602A (zh) * 2021-01-27 2022-07-29 华为技术有限公司 应用显示方法、装置、芯片系统、介质及程序产品
CN115328358A (zh) * 2021-04-22 2022-11-11 华为技术有限公司 一种显示方法及相关装置

Similar Documents

Publication Publication Date Title
US11868671B2 (en) Electronic device and display control method thereof
US11416037B2 (en) Electronic device with flexible display and method for operating same
CN107797739B (zh) 移动终端及其显示控制方法、装置和计算机可读存储介质
CN107357540B (zh) 一种显示方向的调整方法及移动终端
KR102121592B1 (ko) 시력 보호 방법 및 장치
US10068315B2 (en) Electronic device and method for operating display
US20150063785A1 (en) Method of overlappingly displaying visual object on video, storage medium, and electronic device
CN110290426B (zh) 展示资源的方法、装置、设备及存储介质
CN106815809B (zh) 一种图片处理方法和装置
CN110442277B (zh) 显示预览窗口信息的方法及电子设备
CN114514508A (zh) 提供应用的运行画面的电子装置及其操作方法
CN115686407A (zh) 显示方法与电子设备
EP3617990B1 (en) Picture processing method and apparatus, computer readable storage medium, and electronic device
CN111710315B (zh) 图像显示方法、装置、存储介质及电子设备
CN111275607B (zh) 界面显示方法、装置、计算机设备及存储介质
CN117519865A (zh) 重新加载显示界面的方法和电子设备
CN115617225A (zh) 应用界面显示方法、装置、电子设备及存储介质
CN115033333A (zh) 一种悬浮窗显示方法、电子设备和存储介质
CN116048327A (zh) 任务显示区的显示方法、窗口的显示方法及电子设备
CN111158833A (zh) 操作控制方法及电子设备
CN112308104A (zh) 异常识别方法、装置及计算机存储介质
CN115379274B (zh) 基于图片的互动方法、装置、电子设备及存储介质
CN115239576B (zh) 一种照片优化方法、电子设备和存储介质
EP4300979A1 (en) Display method, terminal, and storage medium
CN114815971B (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