CN117472479A - 显示方法和电子设备 - Google Patents
显示方法和电子设备 Download PDFInfo
- Publication number
- CN117472479A CN117472479A CN202210858818.1A CN202210858818A CN117472479A CN 117472479 A CN117472479 A CN 117472479A CN 202210858818 A CN202210858818 A CN 202210858818A CN 117472479 A CN117472479 A CN 117472479A
- Authority
- CN
- China
- Prior art keywords
- color
- application
- area
- status bar
- window
- 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
- 238000000034 method Methods 0.000 title claims abstract description 78
- TZCXTZWJZNENPQ-UHFFFAOYSA-L barium sulfate Chemical compound [Ba+2].[O-]S([O-])(=O)=O TZCXTZWJZNENPQ-UHFFFAOYSA-L 0.000 claims description 148
- 238000004590 computer program Methods 0.000 claims description 4
- 239000000758 substrate Substances 0.000 claims 1
- 230000001976 improved effect Effects 0.000 abstract description 5
- 239000010410 layer Substances 0.000 description 35
- 239000003086 colorant Substances 0.000 description 31
- 238000004891 communication Methods 0.000 description 29
- 230000006854 communication Effects 0.000 description 29
- 238000007726 management method Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 24
- 238000012545 processing Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 230000008859 change Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000010295 mobile communication Methods 0.000 description 6
- 230000008878 coupling Effects 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 238000007667 floating Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 3
- 238000007654 immersion Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 210000000988 bone and bone Anatomy 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001965 increasing effect Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011982 device technology Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000008093 supporting effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例提供了一种显示方法和电子设备。该显示方法包括:响应用户的分屏操作,将电子设备的屏幕分成至少两个窗口,至少两个窗口包括第一窗口和第二窗口,第一窗口运行的第一应用和第二窗口运行的第二应用中的至少一个应用使用沉浸式状态栏;根据第一应用,确定第一颜色,根据第二应用,确定第二颜色;根据第一颜色,显示第一区域的范围内的状态栏图标,根据第二颜色,显示第二区域的范围内的状态栏图标,第一区域是第一窗口上显示状态栏的区域,第二区域是第二窗口上显示状态栏的区域。通过本申请实施例提供的显示方法和电子设备,能够在多窗口场景中使得电子设备的沉浸式状态栏上的图标清晰可见,提高用户的体验感。
Description
技术领域
本申请实施例涉及计算机应用技术领域,更具体地,涉及一种显示方法和电子设备。
背景技术
随着电子设备的发展,手机、平板电脑、个人计算机、车载显示屏等设备广泛应用于家庭娱乐、办公学校等场景,用户对于使用电子设备进行多任务处理,从而提升处理速度的需求也逐渐提升。
电子设备通过分屏等方式满足消费者多窗口处理的需求,例如将一个应用通过电子设备的不同窗口或者将不同应用通过在电子设备的不同窗口显示,使得用户可以通过一个电子设备同时对多个任务进行处理,提升用户的体验感。
但是在使用一个电子设备通过多窗口处理任务时,状态栏图标的颜色会跟随焦点窗口而设置,使用沉浸式状态栏的窗口可能会存在状态栏图标不清晰的问题。
发明内容
本申请实施例提供一种显示方法和电子设备,能够在多窗口场景中使得沉浸式状态栏清晰显示。
第一方面,提供了一种显示方法,由电子设备执行,包括:响应用户的分屏操作,将所述电子设备的屏幕分成至少两个窗口,所述至少两个窗口包括第一窗口和第二窗口,所述第一窗口运行的第一应用和所述第二窗口运行的第二应用中的至少一个应用使用沉浸式状态栏;根据所述第一应用,确定第一颜色,根据所述第二应用,确定第二颜色;根据所述第一颜色,显示第一区域的范围内的状态栏图标,根据所述第二颜色,显示第二区域的范围内的状态栏图标,所述第一区域是第一窗口上显示状态栏的区域,所述第二区域是第二窗口上显示状态栏的区域。
在该实施例中,电子设备响应用户的操作将电子设备的屏幕分成至少两个窗口,其中,该至少两个窗口中的第一窗口和第二窗口对应的至少一个应用使用沉浸式状态栏,电子设备根据两个窗口中的应用确定第一颜色和第二颜色,再根据确定的第一颜色和第二颜色显示第一区域的范围内的状态栏图标和第二区域的范围内的状态栏图标,第一区域和第二区域分别为第一窗口和第二窗口上对应状态栏的区域。从而电子设备能够在分屏模式下,根据每个窗口中沉浸式状态栏的显示界面,调整每个窗口中状态栏图标的颜色,使得状态栏图标清晰可见,提高用户体验感。
结合第一方面,在第一方面的某些实现方式中,所述根据所述第一应用,确定第一颜色,包括:根据所述第一应用在第一区域的背景色,确定所述第一颜色,其中所述第一应用在所述第一区域的背景色与所述第一颜色的差值大于第一预设阈值;或者,根据所述第一应用预设的状态栏图标的颜色,确定所述第一颜色;以及,所述根据所述第二应用,确定第二颜色,包括:根据所述第二应用在所述第二区域的背景色,确定所述第二颜色,其中所述第二应用在所述第二区域的背景色与所述第二颜色的差值大于所述第一预设阈值;或者,根据所述第二应用预设的状态栏图标的颜色,确定所述第二颜色。
在该实施例中,电子设备可以根据两个窗口中的应用预设或者根据应用的背景色确定第一颜色和第二颜色。具体的,当第一应用和第二应用都预设了状态栏图标的颜色时,可以根据预设的状态栏图标的颜色确定第一颜色和第二颜色。当第一应用和第二应用都未预设状态栏图标的颜色时,在两个窗口都预设或被电子设备的操作系统强制设定沉浸式状态栏时,可以根据两个窗口的应用在状态栏区域的背景色确定第一颜色和第二颜色;在两个窗口中只有一个窗口的应用预设或被电子设备的操作系统强制设定沉浸式状态栏时,对于使用沉浸式状态栏的第一窗口,可以根据第一窗口对应的应用在状态栏区域的背景色确定第一颜色,对于未使用沉浸式状态栏的第二窗口,可以由系统确定第二颜色。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:确定所述第一颜色对应的第一灰度和所述第二颜色对应的第二灰度是否大于第二预设阈值;其中,所述根据所述第一颜色,显示第一区域的范围内的状态栏图标的颜色,根据所述第二颜色,显示第二区域的范围内的状态栏图标的颜色,包括:当所述第一灰度或所述第二灰度大于所述第二预设阈值时,将所述第一区域范围内的状态栏图标或所述第二区域范围内的状态栏图标的颜色显示为白色;当所述第一灰度或所述第二灰度小于所述第二预设阈值时,将所述第一区域范围内的状态栏图标或所述第二区域范围内的状态栏图标的颜色显示为黑色。
在该实施例中,电子设备在确定第一颜色和第二颜色之后,还会进一步确定第一颜色和第二颜色对应的灰度是否大于第二预设阈值。在第一颜色和第二颜色对应的灰度大于第二预设阈值时,将第一区域和第二区域的状态栏图标的颜色显示为白色;在第一颜色和第二颜色对应的灰度小于第二预设阈值时,将第一区域和第二区域的状态栏图标的颜色显示为黑色。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:确定所述第一区域的范围和所述第二区域的范围。
在该实施例中,电子设备可以根据用户的分屏操作形成的第一窗口和第二窗口,确定第一区域和第二区域的范围,从而便于将状态栏分区域显示,例如可以将第一区域的范围、第二区域的范围、第一区域的范围内的状态栏图标的颜色和第二区域的范围内的状态栏图标的颜色者四个变量存储在四个对应的字段中,并根据四个字段显示状态栏。
结合第一方面,在第一方面的某些实现方式中,所述第一应用和所述第二应用是同一个应用,所述第二窗口显示的界面是根据用户对所述第一窗口的界面的操作而产生的。
在该实施例中,第一窗口显示的内容和第二窗口显示的内容相关,第二窗口显示的界面是根据用户对第一窗口的界面的操作而产生的,例如第二窗口可以为第一窗口的下一级窗口下级窗口。
结合第一方面,在第一方面的某些实现方式中,所述电子设备的操作系统为安卓系统、Windows系统和Linux系统中任一项。
第二方面,提供了一种显示方法,由电子设备执行,包括:确定第一颜色和第二颜色是否一致,所述第一颜色与第一窗口的状态栏区域对应,所述第二颜色与第二窗口的状态栏区域对应,所述第一窗口和所述第二窗口是所述电子设备上分屏界面的两个窗口;根据判断结果判断是否确定第一区域的范围和第二区域的范围,所述第一区域是所述第一窗口上显示状态栏的区域,所述第二区域是所述第二窗口上显示状态栏的区域,所述第一窗口运行的第一应用和所述第二窗口运行的第二应用中至少一个应用沉浸式状态栏;根据第一颜色和第二颜色显示所述状态栏。
在该实施例中,电子设备会确定与第一窗口上状态栏区域对应的第一颜色和与第二窗口上状态栏区域对应的第二颜色是否一致,并根据判断的结果确定是否确定第一区域的范围第二区域的范围,从而根据第一颜色和第二颜色显示状态栏。
结合第二方面,在第二方面的某些实现方式中,所述根据判断结果判断是否确定第一区域的范围和第二区域的范围,包括:在所述第一颜色和所述第二颜色不一致的情况下,确定所述第一区域的范围和所述第二区域的范围;其中,所述根据第一颜色和第二颜色显示所述状态栏,包括:根据所述第一颜色,将所述第一区域的状态栏图标显示为第一颜色;根据所述第二颜色,将所述第二区域的状态栏图标显示为第二颜色。
在该实施例中,在第一颜色和第二颜色不一致的情况下,电子设备会确定第一区域和第二区域的范围,并根据确定的第一区域的范围和第二区域的范围以及第一颜色和第二颜色,显示第一区域的状态栏图标为第一颜色,显示第二区域的状态栏的图标为第二颜色。
结合第二方面,在第二方面的某些实现方式中,所述根据判断结果判断是否确定第一区域的范围和第二区域的范围,包括:在所述第一颜色和所述第二颜色一致的情况下,不确定第一区域的范围和第二区域的范围。
结合第二方面,在第二方面的某些实现方式中,所述第一应用和/或所述第二应用预设了状态栏图标的颜色,所述方法还包括:获取所述第一应用和/或所述第二应用预设的状态栏图标的颜色;将所述第一应用预设的状态栏图标的颜色确定为第一颜色,和/或,将所述第二应用预设的状态栏图标的颜色确定为第二颜色。
在该实施例中,第一应用或第二应用分别预设了状态栏图标的颜色,则电子设备可以分别确定第一颜色和第二颜色,电子设备可以获取第一应用或第二应用预设的状态栏图标的颜色,并将其确定为第一颜色和第二颜色。
结合第二方面,在第二方面的某些实现方式中,所述第一应用和/或所述第二应用未预设状态栏图标的颜色,所述方法还包括:获取所述第一应用在所述第一区域的背景色和/或所述第二应用在所述第二区域的背景色;根据所述第一应用在所述第一区域的背景色和/或所述第二应用在所述第二区域的背景色,确定所述第一颜色和/或所述第二颜色,其中,所述第一应用在第一区域的背景色与所述第一颜色的差值大于第一预设阈值,所述第二应用在第二区域的背景色与所述第二颜色的差值大于第一预设阈值。
在该实施例中,第一应用或第二应用未预设状态栏图标的颜色,电子设备会获取第一应用在第一区域的背景色和第二应用在第二区域的背景色,并根据获取的背景色确定第一颜色和第二颜色,从而显示状态栏。具体的,电子设备可以获取应用设置的应用在第一区域和/或第二区域的背景色的标识,并根据背景色标识,确定第一颜色和/或第二颜色。
结合第二方面,在第二方面的某些实现方式中,所述方法还包括:确定所述第一颜色对应的第一灰度和所述第二颜色对应的第二灰度是否大于第二预设阈值;其中,所述根据第一颜色和第二颜色显示所述状态栏,包括:当所述第一灰度或所述第二灰度大于第二预设阈值时,将所述第一区域的状态栏图标或所述第二区域的状态栏图标显示为白色;当所述第一灰度或所述第二灰度小于第二预设阈值时,将所述第一区域的状态栏图标或所述第二区域的状态栏图标显示为黑色。
结合第二方面,在第二方面的某些实现方式中,所述第一应用和所述第二应用是同一个应用,所述第二窗口显示的界面是根据用户对所述第一窗口的界面的操作而产生的。
结合第二方面,在第二方面的某些实现方式中,所述电子设备的操作系统为安卓系统、Windows系统和Linux系统中任一项。
第三方面,提供了一种电子设备,包括:一个或多个处理器;存储器,所述存储器中包括指令;当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:响应用户的分屏操作,将所述电子设备的屏幕分成至少两个窗口,所述至少两个窗口包括第一窗口和第二窗口,所述第一窗口运行的第一应用和所述第二窗口运行的第二应用中的至少一个应用使用沉浸式状态栏;根据所述第一应用,确定第一颜色,根据所述第二应用,确定第二颜色;根据所述第一颜色,显示第一区域的范围内的状态栏图标的颜色,根据所述第二颜色,显示第二区域的范围内的状态栏图标的颜色,所述第一区域是第一窗口上显示状态栏的区域,所述第二区域是第二窗口上显示状态栏的区域。
结合第三方面,在第三方面的某些实现方式中,当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:根据所述第一应用在第一区域的背景色,确定所述第一颜色,其中所述第一应用在第一区域的背景色与所述第一颜色的差值大于第一预设阈值;或者,根据所述第一应用预设的状态栏图标的颜色,确定所述第一颜色;以及,根据所述第二应用在第二区域的背景色,确定所述第二颜色,其中所述第二应用在第二区域的背景色与所述第二颜色的差值大于第一预设阈值;或者,根据所述第二应用预设的状态栏图标的颜色,确定所述第二颜色;
结合第三方面,在第三方面的某些实现方式中,所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:确定所述第一颜色对应的第一灰度和所述第二颜色对应的第二灰度是否大于第二预设阈值;当所述第一灰度或所述第二灰度大于所述第二预设阈值时,将所述第一区域范围内的状态栏图标或所述第二区域范围内的状态栏图标的颜色显示为白色;当所述第一灰度或所述第二灰度小于所述第二预设阈值时,将所述第一区域范围内的状态栏图标或所述第二区域范围内的状态栏图标的颜色显示为黑色。
结合第三方面,在第三方面的某些实现方式中,所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:确定所述第一区域的范围和所述第二区域的范围。
结合第三方面,在第三方面的某些实现方式中,所述第一应用和所述第二应用是同一个应用,所述第二窗口显示的界面是根据用户对所述第一窗口的界面的操作而产生的。
结合第三方面,在第三方面的某些实现方式中,所述电子设备的操作系统为安卓系统、Windows系统和Linux系统中任一项。
第四方面,提供了一种电子设备,包括:一个或多个处理器;存储器,所述存储器中包括指令;当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:确定第一颜色和第二颜色是否一致,所述第一颜色与第一窗口的状态栏区域对应,所述第二颜色与第二窗口的状态栏区域对应,所述第一窗口和所述第二窗口是所述电子设备上分屏界面的两个窗口;根据判断结果判断是否确定第一区域的范围和第二区域的范围,所述第一区域是所述第一窗口上显示状态栏的区域,所述第二区域是所述第二窗口上显示状态栏的区域,所述第一窗口运行的第一应用和所述第二窗口运行的第二应用中至少一个应用使用沉浸式状态栏;根据第一颜色和第二颜色显示所述状态栏。
结合第四方面,在第四方面的某些实现方式中,当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:在所述第一颜色和所述第二颜色不一致的情况下,确定所述第一区域的范围和所述第二区域的范围;根据所述第一颜色,将所述第一区域的状态栏图标显示为第一颜色;根据所述第二颜色,将所述第二区域的状态栏图标显示为第二颜色。
结合第四方面,在第四方面的某些实现方式中,所述第一应用和/或所述第二应用预设了状态栏图标的颜色,当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:获取所述第一应用和/或所述第二应用预设的状态栏图标的颜色,将所述第一应用预设的状态栏图标的颜色确定为第一颜色,和/或,将所述第二应用预设的状态栏图标的颜色确定为第二颜色。
结合第四方面,在第四方面的某些实现方式中,所述第一应用和/或所述第二应用未预设状态栏图标的颜色,当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:获取所述第一应用在所述第一区域的背景色和/或所述第二应用在所述第二区域的背景色;根据所述第一应用在所述第一区域的背景色和/或所述第二应用在所述第二区域的背景色,确定所述第一颜色和/或所述第二颜色,其中,所述第一应用在第一区域的背景色与所述第一颜色的差值大于第一预设阈值,所述第二应用在第二区域的背景色与所述第二颜色的差值大于第一预设阈值。
结合第四方面,在第四方面的某些实现方式中,当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:确定所述第一颜色对应的第一灰度和所述第二颜色对应的第二灰度是否大于第二预设阈值;当所述第一灰度或所述第二灰度大于第二预设阈值时,将所述第一区域的状态栏图标或所述第二区域的状态栏的图标显示为白色;当所述第一灰度或所述第二灰度大于第二预设阈值时,将所述第一区域的状态栏图标或所述第二区域的状态栏的图标显示为黑色。
结合第四方面,在第四方面的某些实现方式中,所述第一应用和所述第二应用是同一个应用,所述第二窗口显示的界面是根据用户对所述第一窗口的界面的操作而产生的。
结合第四方面,在第四方面的某些实现方式中,所述电子设备的操作系统为安卓系统、Windows系统和Linux系统中任一项。
第五方面,提供了一种电子设备,包括:处理单元,用于响应用户的分屏操作,将所述电子设备的屏幕分成至少两个窗口,所述至少两个窗口包括第一窗口和第二窗口,所述第一窗口运行的第一应用和所述第二窗口运行的第二应用中的至少一个应用使用沉浸式状态栏;确定单元,还用于根据所述第一应用,确定第一颜色,根据所述第二应用,确定第二颜色;显示单元,用于根据所述第一颜色,显示第一区域的范围内的状态栏图标,根据所述第二颜色,显示第二区域的范围内的状态栏图标,所述第一区域是第一窗口上显示状态栏的区域,所述第二区域是第二窗口上显示状态栏的区域。
在该实施例中,电子设备包括处理单元、确定单元和显示单元,处理单元用于响应于用于的分屏操作,将电子设备的屏幕分成至少两个窗口,确定单元用于根据电子设备的第一窗口和第二窗口的应用,确定第一颜色和第二颜色;显示单元用于根据第一颜色,显示第一区域的范围内的状态栏图标的颜色,根据第二颜色,显示第二区域的范围内的状态栏图标的颜色。
结合第五方面,在第五方面的某些实现方式中,所述确定单元,具体用于根据所述第一应用在第一区域的背景色,确定所述第一颜色,其中所述第一应用在第一区域的背景色与所述第一颜色的差值大于第一预设阈值;或者,根据所述第一应用预设的状态栏图标的颜色,确定所述第一颜色;以及,根据所述第二应用在第二区域的背景色,确定所述第二颜色,其中所述第二应用在第二区域的背景色与所述第二颜色的差值大于第一预设阈值;或者,根据所述第二应用预设的状态栏图标的颜色,确定所述第二颜色。
结合第五方面,在第五方面的某些实现方式中,所述确定单元,还用于:确定所述第一颜色对应的第一灰度和所述第二颜色对应的第二灰度是否大于第二预设阈值;其中,所述显示单元,具体用于:当所述第一灰度或所述第二灰度大于所述第二预设阈值时,将所述第一区域范围内的状态栏图标或所述第二区域范围内的状态栏图标显示为白色;当所述第一灰度或所述第二灰度小于所述第二预设阈值时,将所述第一区域范围内的状态栏图标或所述第二区域范围内的状态栏图标显示为黑色。
结合第五方面,在第五方面的某些实现方式中,所述确定单元,还用于确定所述第一区域的范围和所述第二区域的范围。
结合第五方面,在第五方面的某些实现方式中,所述第一应用和所述第二应用是同一个应用,所述第二窗口显示的界面是根据用户对所述第一窗口的界面的操作而产生的。
结合第五方面,在第五方面的某些实现方式中,所述电子设备的操作系统为安卓系统、Windows系统和Linux系统中任一项。
第六方面,提供了一种电子设备,包括:确定单元,用于确定第一颜色和第二颜色是否一致,所述第一颜色与第一窗口对应,所述第二颜色与第二窗口对应,所述第一窗口和所述第二窗口是所述电子设备上分屏界面的两个窗口;所述确定单元,还用于根据确定结果判断是否确定第一区域的范围和第二区域的范围,所述第一区域是所述第一窗口上显示状态栏的区域,所述第二区域是所述第二窗口上显示状态栏的区域,所述第一窗口运行第一应用,所述第二窗口运行第二应用,所述第一应用和所述第二应用中至少一个应用使用沉浸式状态栏;显示单元,用于根据第一颜色和第二颜色显示所述状态栏。
结合第六方面,在第六方面的某些实现方式中,所述确定单元,具体用于:在所述第一颜色和所述第二颜色不一致的情况下,确定所述第一区域的范围和所述第二区域的范围;其中,所述显示单元,具体用于:根据所述第一颜色,将所述第一区域的状态栏图标显示为第一颜色;根据所述第二颜色,将所述第二区域的状态栏图标显示为第二颜色
结合第六方面,在第六方面的某些实现方式中,所述第一应用和/或所述第二应用预设了状态栏图标的颜色,所述电子设备还包括获取单元,用于获取所述第一应用和/或所述第二应用预设的所述第一颜色和/或所述第二颜色;所述确定单元还用于,将所述第一应用预设的状态栏图标的颜色确定为第一颜色,和/或,将所述第二应用预设的状态栏图标的颜色确定为第二颜色。
结合第六方面,在第六方面的某些实现方式中,所述第一应用和/或所述第二应用未预设状态栏图标的颜色,所述获取单元,还用于获取所述第一应用在所述第一区域的背景色和/或所述第二应用在所述第二区域的背景色;所述确定单元,还用于根据所述第一应用在所述第一区域的背景色和/或所述第二应用在所述第二区域的背景色,确定所述第一颜色和/或所述第二颜色,其中,所述第一应用在第一区域的背景色与所述第一颜色的差值大于第一预设阈值,所述第二应用在第二区域的背景色与所述第二颜色的差值大于第一预设阈值。
结合第六方面,在第六方面的某些实现方式中,所述确定单元,还用于确定所述第一颜色对应的第一灰度和所述第二颜色对应的第二灰度是否大于第二预设阈值;所述显示单元,具体用于:当所述第一灰度或所述第二灰度大于第二预设阈值时,将所述第一区域的状态栏图标或所述第二区域的状态栏的图标显示为白色;当所述第一灰度或所述第二灰度大于第二预设阈值时,将所述第一区域的状态栏图标或所述第二区域的状态栏的图标显示为黑色。
结合第六方面,在第六方面的某些实现方式中,所述第一应用和所述第二应用是同一个应用,所述第二窗口显示的界面是根据用户对所述第一窗口的界面的操作而产生的。
结合第六方面,在第六方面的某些实现方式中,所述电子设备的操作系统为安卓系统、Windows系统和Linux系统中任一项。
第七方面,提供了一种计算机存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如第一方面或第一方面任意一种实现方式以及第二方面或第二方面任意一种实现方式的显示方法。
第八方面,提供了一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如第一方面或第一方面任意一种实现方式以及第二方面或第二方面任意一种实现方式的显示方法。
附图说明
图1是本申请实施例的电子设备的结构示意图。
图2是本申请实施例提供的电子设备的软件结构框图。
图3是沉浸式状态栏和非沉浸式状态栏的示意图。
图4是电子设备处于多窗口模式时状态栏的显示情况。
图5是本申请实施例提供的显示方法示意性流程图。
图6是本申请实施例提供的显示方法适用的电子设备处于多窗口模式的场景图。
图7是本申请实施例提供的显示方法中新增变量示意图。
图8是应用本申请实施例提供的显示方法的状态栏显示效果图。
图9示出了本申请实施例提供的显示方法的时序图。
图10是本申请实施例提供的显示方法示意性流程图。
图11是本申请实施例提供的显示方法的场景判断的示意性流程图。
图12是本申请实施例提供的一种电子设备的示意性框图。
图13是本申请实施例提供的另一种电子设备的示意性框图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行描述。
需要说明的是,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个,“至少一个”、“一个或多个”是指一个、两个或两个以上。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例提供了一种显示方法,可以应用于电子设备,也可以是单独的应用程序,该应用程序可实现本申请中的应用窗口显示方法。具体地,本申请提供的显示方法可以将以分屏状态显示的窗口切换为以悬浮窗或悬浮图标的状态显示,或者将窗口锁定于屏幕边缘。这样当用户需要再次使用该应用时,用户可以在不中断当前应用任务的情况下,快速地对悬浮窗或悬浮图标或被锁定的窗口进行操作,提升用户体验。
本申请实施例提供的应用窗口显示方法可以应用于手机(例如普通屏幕手机、曲面屏手机、折叠屏手机、全面屏手机等)、平板电脑、车载设备、可穿戴设备(如智能手表、智能手环、智能眼镜、智能首饰等)、增强现实(augmented reality,AR)/虚拟现实(virtualreality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、电视、显示器以及其他具有显示功能的电子设备上,本申请实施例对电子设备的具体类型不作任何限制。电子设备的示例性实施例包括但不限于搭载或者其它操作系统的电子设备。
示例性的,图1示出了电子设备100的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。
I2S接口可以用于音频通信。PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serialinterface,CSI),显示屏串行接口(display serial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。USB接口130是符合USB标准规范的接口,具体可以是MiniUSB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。电源管理模块141用于连接电池142。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态等参数。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wirelessfidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigationsatellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(nearfield communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。
电子设备100通过GPU,显示屏194,及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。其中ISP用于处理摄像头193反馈的数据。摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。内部存储器121可以用于存储计算机可执行程序代码,可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
此外,电子设备100还包括多个传感器。例如,图1中示出的多个传感器,其中,压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。气压传感器180C用于测量气压。磁传感器180D包括霍尔传感器,电子设备100可以利用磁传感器180D检测翻盖皮套或翻盖的开合。加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管,接近光传感器180G可以检测电子设备附近是否有物体。环境光传感器180L用于感知环境光亮度,电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度、在拍照时自动调节白平衡等。指纹传感器180H用于采集指纹。温度传感器180J用于检测温度。骨传导传感器180M可以获取振动信号。触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
电子设备上的按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口195用于连接SIM卡。
以上介绍了电子设备100可能的硬件结构示意图。电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的系统为例,示例性说明电子设备100的软件结构。
图2是本申请实施例的电子设备100的软件结构框图。分层架构将电子设备的软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序(application,APP)层,应用程序框架(framework)层,系统运行库层(包括系统库和安卓运行时(Android runtime)),以及内核层。
应用程序层可以包括一系列应用程序包。如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。应用程序主要是用户界面(user interface,UI)方面的,通常使用JAVA语言调用应用程序框架层的接口编写。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。示例性的,窗口管理器可以获取电子设备100上待显示窗口的大小,判断该待显示窗口的内容等。应理解,电子设备100的待显示窗口可以包括电子设备100的界面上正在显示的窗口,还可以包括电子设备100后台运行的一个或多个应用程序的窗口。
窗口管理器是一个服务(service),它是全局的、系统中唯一的、独立于安卓(Android)应用程序的单独的服务,窗口管理器被所有Android应用程序公用。Android的窗口管理系统是基于客户端/服务端(client/service,C/S)模式的,整个窗口系统分为服务端(service)和客户端(client)两大部分。客户端即应用程序,负责请求创建窗口和使用窗口;服务端即窗口管理服务(window manager service或WindowManagerService,WMS),负责完成窗口的维护、窗口显示等。客户端并不是直接和窗口管理服务交互,而是直接和本地对象窗口管理(window manager或WindowManager)交互,然后由窗口管理(WindowManager)完成和窗口管理服务(WindowManagerService)的交互。对于应用来说这个交互是透明的,应用不能感知到窗口管理服务的存在。
窗口可以理解为屏幕上的一块矩形区域,在窗口中显示用户界面(userinterface,UI)用于与用户交互。在一些实施例中,窗口也可以将用户界面(即软件的操作界面)隐藏起来,在用户需要操作时再快速为用户展现应用导航和功能操作,或者根据触发的指令再度展开应用的操作界面。从系统的角度看,窗口其实是一个画布(surface)。一个屏幕可以有多个窗口,而这多个窗口的布局和顺序以及窗口动画是由窗口管理服务WMS管理的,多个画布内容混合和显示则是由SurfaceFlinger服务实现的。窗口是分层的,层级大的会覆盖在层级小的窗口上面。
系统运行库层(libraries)可以分成两部分,分别是系统库和Android运行时。
安卓运行时(Android runtime)即Android运行环境,包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库是应用程序框架的支撑,是连接应用程序框架层与内核层的重要纽带,可包括多个功能模块,如表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:面向嵌入式系统的开放式图形库(open graphics library for embeddedsystems,OpenGL ES)),2D图形引擎(例如:Skia数据库(skia graphics library,SGL))等。
内核层是硬件和软件之间的层,用于提供操作系统的本质功能例如文件管理、内存管理、进程管理、网络协议栈等。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动、蓝牙驱动等。
为方便理解,本申请以下实施例将以具有图1和图2所示结构的电子设备为例,结合附图和应用场景,对本申请实施例提供的显示方法进行具体阐述。
随着电子设备技术的不断发展,电子设备例如手机、平板电脑等的屏幕尺寸越来越大,电子设备上安装的应用(application,App)也越来越多。为了满足用户的个性化需求,越来越多的电子设备支持多窗口模式(也叫多屏模式或分屏功能),即在一个屏幕上能够同时运行并显示多个应用程序。电子设备的多窗口模式打开以后,用户可以将电子设备的屏幕进行分屏。以将电子设备的屏幕分成两个窗口为例,在一些实施例中,每个窗口中独立运行一个应用程序,两个窗口中的应用程序互不影响。在另一些实施例中,两个窗口运行同一个应用程序。此时两个窗口中的该应用程序的界面可以互不影响,即两个窗口中显示的界面可以为同一个界面或者不同的界面;或者两个窗口中也可以显示该应用程序的不同界面,其中一个窗口显示的内容可以由用户在另一个窗口的操作而生成,即两个窗口显示的内容有一定的关系。在另一些实施例中,电子设备还可以处于与其他电子设备多屏协同的工作模式下,即电子设备的两个窗口显示在其他电子设备的屏幕上。在另一些实施例中,电子设备可以通过应用程序实现多窗口模式。
电子设备一般会在顶部设置状态栏,状态栏中一般会显示电量、时间、信号质量等图标。为了给用户提供更好的体验,系统会提供沉浸模式状态栏,即将每个窗口的应用扩展到整个电子设备的屏幕上,从而用户使用应用时不会被系统的状态栏打扰。图3的(a)和(b)示出了分别示出了沉浸式状态栏和非沉浸式状态栏的示例。图3的(a)是沉浸式状态栏的示例,状态栏区域的背景色与应用一致,有较好的用户体验,应用能够根据界面风格设置状态栏图标的颜色,使得应用界面与系统界面统一。图3的(b)中,状态栏区域的颜色是黑色,应用的风格颜色为灰色,应用与状态栏的风格差异较大。在设置沉浸式状态栏时,状态栏层的背景色会通过标识FLAG_TRANSLUCENT_STATUS被设置为透明,而窗口上应用的界面会延伸到状态栏的区域,状态栏区域的会显示出窗口界面上应用的颜色,使得整个窗口上的风格一致,而状态栏上的图标则会根据状态栏区域的背景色对应设置。一般情况下,状态栏图标的颜色与状态栏区域的背景色会具有较大的色差,使得状态栏图标清晰可见。
应理解,在本申请实施例中,状态栏区域的背景色或状态栏区域的颜色是用户使用电子设备时能直接看到的窗口上对应状态栏区域的背景色,而状态栏层的背景色是电子设备系统上分层的窗口中状态栏层的颜色。在一些情况下,状态栏区域的背景色即为状态栏层的背景色,例如窗口上的应用不使用沉浸式状态栏,且状态栏区域没有被其他悬浮窗口等遮盖时,由于状态栏层位于应用界面的上层显示,状态栏区域的背景色为状态栏层的颜色;在另一些情况下,状态栏区域的背景色不是状态栏层的背景色,例如,窗口上的应用使用沉浸式状态栏,此时,上层的状态栏层背景色为透明,则应用界面延伸至状态栏区域显示,状态栏区域的背景色实际上为状态栏下一层的应用的背景色。
在电子设备处于多窗口模式的情况下,多个窗口显示的内容一般不同。以两个窗口为例,如果两个窗口中存在使用沉浸式状态栏的窗口,那么使用沉浸式状态栏的窗口中的状态栏图标的颜色会跟随焦点窗口的应用而设置,焦点窗口是用户当前点击或者操作的窗口。当两个窗口中对应状态栏区域的背景色不同时,可能会引起使用沉浸式状态栏的窗口中的状态栏图标不清晰。例如,图4示出了电子设备处于双窗口模式下状态栏的显示情况。如图4的(a)和(b)所示,电子设备的屏幕界面包括第一窗口401和第二窗口402,窗口401的状态栏区域的背景色为深色,而窗口402状态栏区域的背景色为浅色。
当焦点窗口为窗口402时,如图4的(a)所示,状态栏上的图标会依据窗口402设置,由于窗口402状态栏区域404的背景色为浅色,图标的颜色会设置成黑色,因此包括窗口401的状态栏区域403里的图标的颜色跟随窗口402的状态栏区域404的图标的颜色设置为黑色,窗口401的状态栏区域403上显示的电子设备的两个SIM卡的信号强度图标、无线网图标和电池电量图标以及窗口402的状态栏区域404显示的时间图标都被电子设备的操作系统设置为黑色。在这种情况下,窗口401的状态栏图标能够与该窗口401对应的状态栏区域401的背景有一定的色差,图标可以辨识。
但是当焦点窗口为窗口401时,如图4的(b)所示,窗口402的状态栏区域405的图标会跟随窗口401的状态栏区域406的图标的颜色设置为白色,窗口401的状态栏区域405上显示的电子设备的两个SIM卡的信号强度图标、无线网图标和电池电量图标以及窗口402的状态栏区域406显示的时间图标都被电子设备的操作系统设置为白色。此时,对于窗口402上的状态栏区域406的时间图标,由于与状态栏区域406的背景色一致,无法清晰显示。
图5示出了本申请实施例提供的一种显示方法。
S502,响应用户的分屏操作,将电子设备的屏幕分成至少两个窗口,至少两个窗口包括第一窗口和第二窗口,第一窗口运行的第一应用和第二窗口运行的第二应用中的至少一个应用使用沉浸式状态栏。
在S502中,电子设备会响应用户的分屏操作,将电子设备的屏幕分成至少两个窗口,以电子设备被分成两个窗口为例,电子设备处于双窗口模式。
在一些实施例中,两个窗口中的界面可以独立显示。第一应用和第二应用可以不是同一个应用,例如,要一边进行视频播放,一边进行会话聊天,并且在聊天过程中不会遮挡视频的播放,则用户可以执行分屏操作。响应于用户的分屏操作,电子设备进入分屏界面。此时电子设备的屏幕被分为两个窗口,两个窗口分别独立运行两个应用程序,且用户可以分别对两个窗口中显示的应用程序界面进行独立操作。如图6的(a)所示,电子设备的屏幕响应于用户的操作分成第一窗口601和第二窗口602,第一窗口601可以用于用户与小王进行会话,用户可以用第二窗口602播放视频,且用户对于第一窗口601和第二窗口602的操作相互独立,不会互相影响。再如,第一应用和第二应用可以不是两个独立的应用,而是同一个应用的独立界面,例如用户想要使用同一个应用同时与两个人建立会话,且不希望频繁的进行会话界面的退出与进入从而切换两个会话界面。如图6的(b)所示,用户想要使用一个应用同时与小王和小李建立会话,则可以将电子设备的屏幕分成第一窗口603和第二窗口604,用户可以使用第一窗口603与小王进行会话,使用第二窗口604与小李进行会话,第一窗口603和第二窗口604中是同一个应用的不同界面,且两个窗口的界面互相独立。
在另一些实施例中,第一应用和第二应用是同一个应用,第二窗口显示的界面是根据用户对第一窗口的界面的操作而产生的。也就是说,两个窗口界面显示的是同一个应用的不同界面,且第二窗口是根据用户对第一窗口的操作而显示的。例如图6的(c)中,用户打开会话应用,第一窗口605会显示用户的会话列表,用户可以的会话列表中有小王、小张、小李和一家人,用户选择会话“小李”,则第二窗口606会显示用户与“小李”会话的具体内容。用户还可以在第一窗口605选择其他会话,则第二窗口606也会对应出现用户的其他会话。即第二窗口606显示的内容是根据用户对第一窗口605的操作显示的下一级窗口。应理解,本申请中只用会话应用示意性说明了多窗口状态下,第二窗口是根据用户对第一窗口的操作而显示的实例,在其他场景中也适用。例如,购物APP中,第一窗口为商品列表,第二窗口是根据用户点击列表中某一商品之后显示的商品详情。
在上述场景中,电子设备两个窗口均位于该电子设备的显示屏上。在另一些场景中,电子设备可以处于多屏协同模式,即电子设备的窗口显示在其他电子设备上。例如,如图6的(d)所示,手机的屏幕界面显示在笔记本电脑的界面上,且手机的屏幕界面上包括第一窗口607和第二窗口608,用户可以在电脑的显示屏上操作手机上显示的界面。
本申请实施例提供的显示方法也可以应用于电子设备的应用上,例如笔记本电脑上使用安卓模拟器显示分屏界面,安卓模拟器上显示的分屏界面上包括第一窗口和第二窗口。
电子设备被分成至少两个窗口之后,电子设备会判断两个窗口的应用是否使用沉浸式状态栏。
在一些实施例中,应用默认使用沉浸模式,电子设备在应用打开后能够获取到应用设置其界面的状态栏层的背景色为透明。具体的,应用具有STATUS_BAR_TRANSPARENT标识,电子设备的操作系统确定用户进行分屏操作后存在两个窗口,且两个窗口中的一个应用的界面或者两个应用的界面状态栏层的背景色都被应用通过该标识设置为透明。
在另一些实施例中,用户分屏的两个窗口上第一应用和第二应用未预设沉浸式状态栏,则电子设备可以为应用的两个界面设置沉浸式状态栏,从而使得应用在电子设备上的界面用户体验感更好。具体的,电子设备的操作系统可以添加STATUS_BAR_TRANSPARENT标识,将状态栏层的背景色设置为透明,使得状态栏区域的颜色跟随应用背景变化,完成沉浸式状态栏的设置。
在另一些实施例中,用户分屏的两个窗口中的第一窗口中的第一应用预设了沉浸式状态栏,第二窗口的第二应用未设置沉浸式状态栏,则电子设备可以为了第二应用显示界面更加舒适,为第二应用设置沉浸式状态栏;也可以跟随第二应用的设置,不为第二应用设置沉浸式状态栏。
在S502之后,电子设备的两个窗口中至少一个窗口对应的应用预设了沉浸式状态栏或者由电子设备的系统为该窗口对应的应用设置了沉浸式状态栏。
在本申请实施例中,电子设备还会确定第一区域的范围和第二区域的范围。
具体的,例如可以分别将第一区域和第二区域的范围存储在对应的变量中。例如,可以将第一区域和第二区域的范围分别存储在变量stackbounds_1(x1,y1,height1,width1)、stackbounds_2(x2,y2,height2,width2)中,其中(x,y)为区域顶点的坐标,(height,width)为区域的高度和宽度。如图7所示,电子设备上有第一窗口和第二窗口,其中第一窗口对应状态栏的第一区域以及第二窗口对应状态栏的第二区域已经在图7中示意。对于第一区域,可以用其左上角的O点作为参照,stackbounds_1=(0,0,h,w1),对于第二区域,可以用其左上角的A点作为参照,stackbounds_2=(0,0,h,w2)。
S504,根据第一应用,确定第一颜色;根据第二应用,确定第二颜色。
S506,根据第一颜色,显示第一区域的范围内的状态栏图标,根据第二颜色,显示第二区域的范围内的状态栏图标,第一区域是第一窗口上显示状态栏的区域,第二区域是第二窗口上显示状态栏的区域。
电子设备可以将第一颜色确定为第一区域内的状态栏图标的颜色,将第二颜色确定为第二区域内的状态栏图标的颜色。从而根据第一颜色和第二颜色,显示第一区域内的状态栏图标和第二区域内的状态栏图标。
在本申请实施例中,根据第一应用,确定第一颜色,包括:根据第一应用在第一区域的背景色,确定第一颜色,其中第一应用在第一区域的背景色与第一颜色的差值大于第一预设阈值;或者,根据第一应用预设的状态栏图标的颜色,确定第一颜色;以及,根据第二应用,确定第二颜色,包括:根据第二应用在第二区域的背景色,确定第二颜色,其中第二应用在第二区域的背景色与第二颜色的差值大于第一预设阈值;或者,根据第二应用预设的状态栏图标的颜色,确定第二颜色。
也就是说,电子设备可以根据应用的预设或者自行设置第一窗口和第二窗口对应的状态栏图标的颜色。针对电子设备的两个窗口对应的应用都预设了沉浸式状态栏或者都由电子设备设置了沉浸式状态栏,电子设备可以通过以下几种方式确定第一颜色和第二颜色:
方法1,第一应用和第二应用已经预设了状态栏图标的颜色。则电子设备根据第一应用预设的状态栏图标的颜色,确定第一颜色;根据第二应用预设的状态栏图标的颜色,确定第二颜色。例如,在安卓系统中,电子设备可以通过标识:SYSTEM_UI_FLAG_LIGHT_STATUS_BAR获取应用使用浅色状态栏,这意味着应用预设的状态栏图标的颜色为黑色,如果没有此标识,则说明应用使用深色状态栏,预设的图标的颜色为白色。深色和浅色可以是状态栏区域的背景色对应的灰度值,灰度值大于预设阈值时,为浅色,灰度值小于预设阈值时,为深色,灰度的具体计算方式参见后文的说明。或者,电子设备可以通过不同的标识获取应用预设的不同状态栏颜色,例如针对不同的状态栏图标的颜色,应用预设对应的颜色标识,颜色标识不限于对应黑色和白色图标,还可以对应其他颜色图标,电子设备可以分别根据应用设置的状态栏图标的颜色标识,确定第一颜色和第二颜色。
方法2,第一应用和第二应用未预设状态栏图标的颜色。则电子设备根据第一应用在第一区域的背景色,确定第一颜色,其中第一应用在第一区域的背景色与第一颜色差值大于第一预设阈值;根据第二应用在第二区域的背景色,确定第二颜色,其中第二应用在第二区域的背景色与第二颜色差值大于第二预设阈值。
电子设备可以两种方式获取第一应用在第一区域的背景色和第二应用在第二区域的背景色。
例如,电子设备可以通过第一应用和第二应用的背景色标识,获取第一应用在第一区域的背景色和第二应用在第二区域的背景色。示例性的,针对安卓系统,电子设备可以获取第一窗口对应的decorView中最上层view对应的背景色,背景色可以存储在应用activity的资源文件中的background字段中。如果最上层view未设置背景色或设置透明背景色,则继续获取下一层view的背景色,最终可以获取第一应用在第一区域的背景色和第二应用在第二区域的背景色。针对其他操作系统,可以有其他不同的背景色标识以及获取方式,本申请实施例不再赘述。
再如,电子设备可以通过直接采集第一区域和第二区域的多个像素点的颜色获取第一应用在第一区域的背景色和第二应用在第二区域的背景色。其中,采集的第一区域和第二区域的多个像素点可以平均分布在第一区域和第二区域。采集的第一区域和第二区域的多个像素点也可以不是均匀分布在第一区域和第二区域的,例如,仅在靠近第一区域和第二区域内状态栏图标显示的位置附近采集更多的像素点,从而获取第一区域和第二区域的背景色。单个像素点的颜色可以通过该像素点的R、G、B值计算,其中R、G、B为该像素点的红色、绿色和蓝色的值。示例性的,其像素值可以通过R、G、B的值的加权平均数等方式计算,单个像素点的颜色Y=h1*R+h2*G+h3*B,h1、h2和h3为权重。例如h1、h2和h3可以为同样的值,则像素点的颜色为RGB的算数平均数;或者h1、h2和h3可以为不同的值,该值可以根据需要或者经验设置。第一区域和第二区域的背景色可以通过对第一区域或第二区域的多个像素点的颜色再进行加权或算数平均数计算。或者,第一区域和第二区域的多个像素点的颜色可以直接通过对该多个像素点的R、G、B值通过计算加权平均数或算数平均数获得。
获取到第一区域和第二区域的背景色之后,电子设备可以根据第一区域的背景色和第二区域的背景色,确定第一颜色和第二颜色。以确定第一应用对应的第一颜色为例,具体的,例如,电子设备可以确定背景色对应的原色R、G、B值,从而可以根据背景色的R、G、B值确定第一颜色,第一颜色对应的R值、G值、B值都与背景色对应的R值、G值、B值的差值大于第一预设阈值或者第一颜色对应的R值、G值、B值之一与背景色对应的R值、G值、B值之一的差值大于第一预设阈值,其中R、G、B为背景色的红色、绿色和蓝色的值。
在一些实施例中,例如第一颜色和背景色可以为互补色,背景色为红色时,可以将第一颜色设置为绿色,并将第一颜色设置为状态栏图标的颜色。
或者电子设备可以直接对背景色取反确定第一颜色。例如,可以通过将背景色对应的R值、G值、B值减255,获取第一颜色。或者电子设备可以通过背景色的R、G、B值确定背景色对应的YUV值,例如Y=0.299R+0.587G+0.114B,电子设备可以使得第一颜色对应的Y值与背景色对应的Y值大于第一预设阈值。或者电子设备可以计算背景色对应的R值、G值、B值对应的加权值,并设置第一颜色的R值、G值、B值的加权值与背景色R值、G值、B值加权值大于第一预设阈值。
方法3,第一应用和第二应用之一预设了状态栏图标的颜色,以第一应用预设了状态栏图标的颜色为例。电子设备可以将第一应用预设的图标的颜色确定为第一颜色,根据第二应用在第二区域的背景色确定第二颜色(具体确定方式参见前文说明)。
针对两个窗口之中只有一个窗口的应用使用沉浸式状态栏的场景,例如第一窗口的应用使用沉浸式状态栏,第二窗口的应用不使用沉浸式状态栏。对于第一窗口,可以按照前文对于沉浸式状态栏的背景色以及图标的颜色确定方式,确定第一颜色。
对于第二窗口如果第二窗口的应用预设了状态栏的图标的颜色,可以直接将预设的图标的颜色确定为第二颜色。例如,电子设备的操作系统通过调用getWindow().getDecorView().setSystemUiVisibility()方法,获取到应用具有View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR标识,则可以确定第二应用预设的状态栏背景色为浅色,从而确定第二应用预设的状态栏图标颜色为深色,即第一颜色为浅色,第二颜色为深色,在具体场景中,例如,浅色为白色,深色为黑色。
如果第二窗口的应用未预设状态栏的图标的颜色,则在一种实施例中,可以由电子设备通过getWindow().setStatusBarColor()方法获取到对应的颜色标识,并将颜色标识对应的颜色确定为第一颜色,电子设备可以按照前文对于沉浸式状态栏类似的方式确定第二颜色;或者可以由电子设备的操作系统选择对应的颜色组合,例如状态栏背景色为黑色,而状态栏图标的颜色为白色。
在电子设备获取到第一颜色和第二颜色之后,可以直接将第一颜色和第二颜色确定为第一区域和第二区域的状态栏图标的颜色,即根据第一颜色和第二颜色,显示第一区域的范围内的状态栏图标和第二区域的范围内的状态栏图标。
在本申请实施例中,电子设备还可以确定第一颜色对应的第一灰度和第二颜色对应的第二灰度是否大于第二预设阈值;其中,根据第一颜色,显示第一区域的范围内的状态栏图标的颜色,根据第二颜色,显示第二区域的范围内的状态栏图标的颜色,包括:当第一灰度或第二灰度大于第二预设阈值时,将第一区域的状态栏图标或第二区域的状态栏图标的颜色显示白色;当第一灰度或第二灰度大于第二预设阈值时,将第一区域的状态栏图标或第二区域的状态栏图标的颜色显示为黑色。
例如,电子设备可以在获得第一颜色和第二颜色后,将第一颜色和第二颜色对应的RGB值换算成YUV值,Y表示灰度,U和V表示色度,Y=0.299R+0.587G+0.114B,当Y大于192时,将第一区域或第二区域的状态栏图标显示为白色;当Y小于192时,将第一区域或第二区域的状态栏图标显示为黑色。上述Y的计算公式以及黑色和白色图标显示门限192只是示意性给出,在不同的标准下,可能使用不同的计算公式计算对应的灰度值。
在本申请实施例中,电子设备会根据第一区域的范围、第二区域的范围、第一区域的范围内的状态栏图标的颜色和第二区域的范围内的状态栏图标的颜色,显示电子设备的状态栏。
具体的,电子设备确定的第一区域的范围内的状态栏图标的颜色可以为第一颜色或者根据第一颜色进一步确定的黑色或白色,第二区域的范围内的状态栏图标的颜色可以为第二颜色或者根据第二颜色进一步确定的黑色或白色。之后可以将第一区域的范围内的状态栏图标的颜色存储在变量visibility_1中;将第二区域的范围内的状态栏图标的颜色存储在变量visibility_2中,再根据第一区域的范围stackbounds_1和第二区域的范围stackbounds_2将状态栏分为两部分,将stackbounds_1存储的第一区域的范围内的状态栏图标的颜色设置为变量visibility_1中的颜色,将stackbounds_2存储的第二区域的范围内的状态栏图标的颜色设置为变量visibility_2中的颜色,从而根据四个变量的取值显示状态栏图标。通过将状态栏图标分区域设置对应的颜色,可以使得电子设备上分屏界面上的多个窗口都能够根据当前窗口的显示情况,设置状态栏图标的颜色,使得整个状态栏区域的状态栏图标都能够清晰可见,提升用户体验感。
在本申请实施例中,电子设备可以使用安卓系统、Linux系统,windows系统等。
图8示出了采用本申请实施例的技术方案时状态栏的显示情况。在图8中,电子设备的屏幕被分为第一窗口801和第二窗口802,第一区域803(白色虚线框示意)对应的背景色为黑色,第二区域804对应的背景色为白色,则可以使得图标的颜色和区域的颜色均值互补,即将第一区域的状态栏图标设置为白色,将第二区域的状态栏图标设置为黑色,从而每个窗口上的状态栏图标都能够清晰可见。
图9示出了本申请实施例提供的显示方法时序图,包括以下步骤:
S901,布局窗口。
在S901中,由于电子设备的窗口属性发生变化,例如可见性或者窗口大小发生变化时,需要对窗口重新布局。在本申请实施例中,电子设备的窗口大小发生变化是由于用户进行分屏操作而产生的,从而电子设备的操作系统接收用户的分屏操作,调用窗口管理服务(WindowManagerService,WMS)中的布局窗口方法(relayoutWindow)开始布局窗口。
S902,刷新界面。
在S902中,窗口管理服务调用窗口根容器(RootWindowContainer)中的刷新界面方法(performSurfacePlacement)进行电子设备的界面刷新,循环刷新子窗口的大小和位置,并计算子窗口的大小。对应于本申请实施例,在该步骤中,电子设备刷新第一窗口和第二窗口的大小和位置,并计算第一窗口和第二窗口的大小。
S903,应用界面变化处理。
在S903中,RootWindowContainer调用显示内容(DisplayContent)中的应用界面变化处理方法(applySurfaceChangesTransaction)完成窗口动画,窗口动画主要可以包括通过分屏操作产生的窗口切换或进入的动画。
S904,控制状态栏图标显示和隐藏。
在S904中,DisplayContent调用显示策略(DisplayPolicy)中的布局后显示方法(finishPostLayoutPolicyLw)控制状态栏图标显示和隐藏以及具体显示的图标。
S905,更新系统UI显示。
在S905中,DisplayPolicy调用状态栏(StatusBar)中的更新系统UI显示方法(onSystemUiVisivilityChanged)中的更新系统UI(POLICY_UPDATE_SYSUIVISIBILITY)接口将visibility_1,visibility_2,stackbounds_1和stackbounds_2的值传递给StatusBar,在状态栏中划分出stackbounds_1和stackbounds_2区域,并根据visibility_1,visibility_2设置对应区域的颜色,从而能够更新状态栏。
S906,更新状态栏。
在S906中,StatusBar调用状态栏控制(LightBarController)中的更新状态栏方法(updateStatus)更新状态栏。
以两个窗口为例,图10示出了本申请实施例提供的显示方法的示意性流程图。
S1010,电子设备场景匹配。
在S1010中,电子设备会对窗口数量和是否采用沉浸式状态栏进行判断。如图11所示,场景匹配过程如图11所示,包括以下步骤:
S1110,确定电子设备是否存在两个窗口。
如果电子设备只有一个窗口,则只需按照S1115的步骤保持第一窗口状态栏设置即可,无需采用本申请的技术方案设置状态栏的颜色。
S1120,确定第一窗口是否使用沉浸式状态栏。
在S1120中,电子设备如果确定第一窗口的应用设备已经使用沉浸式状态栏,则可以继续进行对第二窗口场景的匹配。如果第一窗口的应用未使用沉浸式状态栏,可以根据用户对电子设备的预先设置,为一窗口设置沉浸式状态栏。
S1130,确定电子设备是否存在两个窗口。
在S1130步骤进行之前,电子设备已经对电子设备的双窗口场景进行了初步判断,并确定第一窗口使用了沉浸式状态栏或者为第一窗口设置了沉浸式状态栏。电子设备此时仍然要判断是否存在两个窗口,防止在进行接下来的场景匹配之前,两个窗口中的其中一个被用户关闭。
S1140,确定第二窗口是否使用沉浸式状态栏。
在S1140中,电子设备判断第二窗口是否使用沉浸式状态栏,如果未使用,可以依据用户的预先设置或电子设备的设置,为第二窗口的应用设置沉浸式状态栏。
S1150,按照S1020至S1050的步骤更新状态栏。
电子设备场景匹配完成,可以按照后续的步骤更新状态栏。图11所示的场景匹配的过程中,电子设备会确定存在两个窗口,且会根据两个窗口的预设或者由电子设备设置使得两个窗口都使用沉浸式状态栏。如前文描述,本申请实施例采用的技术方案可以用于只有一个窗口使用沉浸式状态栏的场景,详细内容前文已经介绍,在此不再赘述。
S1020,确定两个窗口的应用是否都预设了状态栏图标的颜色。
在S1020中,一些应用为了界面美观,会预设状态栏图标的颜色,而一些应用不会预设状态栏图标的颜色,在该步骤中电子设备需要进行判断两个窗口的应用是否都预设了状态栏图标的颜色。
S1022,在确定两个窗口的应用不是都预设了状态栏图标的颜色的情况下,确定未预设状态栏图标的颜色的窗口的状态栏图标的颜色。
在S1022中,可能两个窗口的应用中的一个应用或两个应用未预设状态栏图标的颜色,则电子设备可以根据该一个应用或两个应用的背景色,确定其状态栏图标的颜色。
S1030,确定两个窗口对应的状态栏图标的颜色是否一致。
在S1030中,两个窗口对应的状态栏图标的颜色可能都是应用预设的;或者一个窗口对应的状态栏图标的颜色是预设的,另一个窗口对应的状态栏图标的颜色是电子设备根据应用的背景确定的;或者两个窗口对应的状态栏图标的颜色都是电子设备根据应用的背景确定的。电子设备会确定两个窗口对应的状态栏图标的颜色是否一致。
S1034,在确定两个窗口对应的状态栏图标的颜色一致的情况下,根据状态栏图标的颜色更新状态栏。
由于状态栏图标的颜色一致,所以在更新状态栏之前增加该判断过程,可以无需将状态栏分为两个区域分别设置状态栏图标的颜色,直接为整个状态栏图标设置一样的颜色即可。
S1040,在确定两个窗口对应的状态栏图标的颜色不一致的情况下,获取两个窗口对应的状态栏区域的范围。
当对于S1030的判断,电子设备确定两个窗口预设的状态栏图标的颜色不一致时,可以获取两个窗口对应的状态栏区域范围,具体的,可以根据两个窗口的显示情况,将状态栏分成两个区域。
S1050,根据区域的范围以及状态栏图标的颜色更新状态栏。
在S1050中,由于两个窗口对应的状态栏图标的颜色不一致,电子设备需要获取两个窗口对应的状态栏区域的范围,并根据区域范围分别为其设置状态栏图标的颜色。具体的,可以增加描述第一区域的范围内的状态栏图标的颜色的变量visibility_1,描述第二区域的范围内的状态栏图标的颜色的变量visibility_2,以及第一区域的范围变量stackbounds_1和第二区域的范围变量stackbounds_2,并根据者四个变量的值显示状态栏。
图10所示的技术方案中,在第一颜色和第二颜色一致时,不将状态栏按照对应的窗口分区域显示对应的状态栏图标,可以减少此情况下,分区域显示状态栏带来的处理开销。在具体场景下,也可以采用图5的实施例的方式,即不考虑图标颜色是否一致,直接分区域显示状态栏图标。
应理解,本申请实施例仅以电子设备的显示屏幕上包括两个窗口为例介绍本申请实施例的技术方案,但是,当电子设备包括更多的窗口时,例如三个窗口,四个窗口等,本申请实施例的方案也能够按照窗口与状态栏的关系,将对应不同窗口的状态栏区域按照应用的界面设置状态栏图标的颜色,例如,可以为多个窗口中的每个窗口设置存储窗口对应状态栏区域范围的变量以及状态栏图标的颜色的变量,最终可以根据每个窗口的应用预设或者由电子设备确定,将状态栏上的图标分区域显示颜色,从而使得整个屏幕上的状态栏图标都能够清晰显示。
图12示出了本申请实施例提供的一种电子设备1200,该电子设备1200包括确定单元1210,电子设备还可以包括显示单元1220,确定单元1210和显示单元1220可以实现相应的通信功能。
该电子设备1200可以包括用于执行图5、图9至图11的方法的单元。并且,该电子设备1200中的各单元和上述其他操作和/或功能分别为了实现图5、图9至图11的方法实施例的相应流程。
具体的,该电子设备1200包括:处理单元1210,用于响应用户的分屏操作,将电子设备的屏幕分成至少两个窗口,至少两个窗口包括第一窗口和第二窗口,第一窗口运行的第一应用和第二窗口运行的第二应用中的至少一个应用使用沉浸式状态栏;确定单元1220,还用于根据第一应用,确定第一颜色,根据第二应用,确定第二颜色;显示单元1230,用于根据第一颜色,显示第一区域的范围内的状态栏图标,根据第二颜色,显示第二区域的范围内的状态栏图标,第一区域是第一窗口上显示状态栏的区域,第二区域是第二窗口上显示状态栏的区域。
在本申请实施例中,确定单元1220,具体用于根据第一应用在第一区域的背景色,确定第一颜色,其中第一应用在第一区域的背景色与第一颜色的差值大于第一预设阈值;或者,根据第一应用预设的状态栏图标的颜色,确定第一颜色;以及,根据第二应用在第二区域的背景色,确定第二颜色,其中第二应用在第二区域的背景色与第二颜色的差值大于第一预设阈值;或者,根据第二应用预设的状态栏图标的颜色,确定第二颜色。
在本申请实施例中,确定单元1220,还用于:确定第一颜色对应的第一灰度和第二颜色对应的第二灰度是否大于第二预设阈值;其中,显示单元1230,具体用于:当第一灰度或第二灰度大于第二预设阈值时,将第一区域范围内的状态栏图标或第二区域范围内的状态栏图标的颜色显示为白色;当第一灰度或第二灰度小于第二预设阈值时,将第一区域范围内的状态栏图标或第二区域范围内的状态栏图标的颜色显示为黑色。
在本申请实施例中,确定单元1220,还用于确定第一区域的范围和第二区域的范围。
在本申请实施例中,第一应用和第二应用是同一个应用,第二窗口显示的界面是根据用户对第一窗口的界面的操作而产生的。
在本申请实施例中,电子设备1200的操作系统可以为安卓系统、Windows系统和Linux系统中任一项。
图13示出了本申请实施例提供的另一种电子设备1300。电子设备1300包括:处理器1320。在本申请的实施例中,处理器1320用于实现相应的控制管理操作,例如,处理器1320用于支持电子设备1300执行前述实施例的方法或操作或功能。可选的,电子设备1300还可以包括:存储器1310和通信接口1330;处理器1320、通信接口1330以及存储器1310可以相互连接或者通过总线1340相互连接。其中,通信接口1330用于支持该电子设备1300与其他设备等进行通信,存储器1310用于存储电子设备1300的程序代码和数据。处理器1320调用存储器1310中存储的代码或者数据实现相应的操作。该存储器1310可以跟处理器耦合在一起,也可以不耦合在一起。本申请实施例中的耦合是电子设备、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于电子设备、单元或模块之间的信息交互。
其中,处理器1320可以是中央处理器单元,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。通信接口1330可以是收发器、电路、总线、模块或其它类型的通信接口。总线1340可以是外设部件互连标准(peripheral componentinterconnect,PCI)总线或扩展工业标准结构(extended industry standardarchitecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请实施例还提供一种计算机可读介质,计算机可读介质存储有程序代码,当计算机程序代码在计算机上运行时,使得计算机执行上述图5、图9至图11的方法实施例中的步骤。
本申请实施例还提供一种芯片,包括:至少一个处理器和存储器,至少一个处理器与存储器耦合,用于读取并执行存储器中的指令,以执行上述图5、图9至图11的方法实施例中的步骤。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (14)
1.一种显示方法,应用于电子设备,其特征在于,包括:
响应用户的分屏操作,将所述电子设备的屏幕分成至少两个窗口,所述至少两个窗口包括第一窗口和第二窗口,所述第一窗口运行的第一应用和所述第二窗口运行的第二应用中的至少一个应用使用沉浸式状态栏;
根据所述第一应用,确定第一颜色,根据所述第二应用,确定第二颜色;
根据所述第一颜色,显示第一区域的范围内的状态栏图标,根据所述第二颜色,显示第二区域的范围内的状态栏图标,所述第一区域是所述第一窗口上显示状态栏的区域,所述第二区域是所述第二窗口上显示状态栏的区域。
2.根据权利要求1所述的方法,其特征在于,
所述根据所述第一应用,确定第一颜色,包括:
根据所述第一应用在所述第一区域的背景色,确定所述第一颜色,其中所述第一应用在所述第一区域的背景色与所述第一颜色的差值大于第一预设阈值;或者,
根据所述第一应用预设的状态栏图标的颜色,确定所述第一颜色;
以及,
所述根据所述第二应用,确定第二颜色,包括:
根据所述第二应用在所述第二区域的背景色,确定所述第二颜色,其中所述第二应用在所述第二区域的背景色与所述第二颜色的差值大于所述第一预设阈值;或者,
根据所述第二应用预设的状态栏图标的颜色,确定所述第二颜色。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
确定所述第一颜色对应的第一灰度和所述第二颜色对应的第二灰度是否大于第二预设阈值;
其中,所述根据所述第一颜色,显示第一区域的范围内的状态栏图标的颜色,根据所述第二颜色,显示第二区域的范围内的状态栏图标的颜色,包括:
当所述第一灰度或所述第二灰度大于所述第二预设阈值时,将所述第一区域范围内的状态栏图标或所述第二区域范围内的状态栏图标的颜色显示为白色;
当所述第一灰度或所述第二灰度小于所述第二预设阈值时,将所述第一区域范围内的状态栏图标或所述第二区域范围内的状态栏图标的颜色显示为黑色。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
确定所述第一区域的范围和所述第二区域的范围。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述第一应用和所述第二应用是同一个应用,所述第二窗口显示的界面是根据用户对所述第一窗口的界面的操作而产生的。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述电子设备的操作系统为安卓系统、Windows系统和Linux系统中任一项。
7.一种电子设备,其特征在于,包括:一个或多个处理器;存储器,所述存储器中包括指令;当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
响应用户的分屏操作,将所述电子设备的屏幕分成至少两个窗口,所述至少两个窗口包括第一窗口和第二窗口,所述第一窗口运行的第一应用和所述第二窗口运行的第二应用中的至少一个应用使用沉浸式状态栏;
根据所述第一应用,确定第一颜色,根据所述第二应用,确定第二颜色;
根据所述第一颜色,显示第一区域的范围内的状态栏图标的颜色,根据所述第二颜色,显示第二区域的范围内的状态栏图标的颜色,所述第一区域是所述第一窗口上显示状态栏的区域,所述第二区域是所述第二窗口上显示状态栏的区域。
8.根据权利要求7所述的电子设备,其特征在于,当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
根据所述第一应用在所述第一区域的背景色,确定所述第一颜色,其中所述第一应用在所述第一区域的背景色与所述第一颜色的差值大于第一预设阈值;或者,
根据所述第一应用预设的状态栏图标的颜色,确定所述第一颜色;
以及,
根据所述第二应用在所述第二区域的背景色,确定所述第二颜色,其中所述第二应用在所述第二区域的背景色与所述第二颜色的差值大于所述第一预设阈值;或者,
根据所述第二应用预设的状态栏图标的颜色,确定所述第二颜色。
9.根据权利要求7或8所述的电子设备,其特征在于,所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
确定所述第一颜色对应的第一灰度和所述第二颜色对应的第二灰度是否大于第二预设阈值;
当所述第一灰度或所述第二灰度大于所述第二预设阈值时,将所述第一区域范围内的状态栏图标或所述第二区域范围内的状态栏图标的颜色显示为白色;
当所述第一灰度或所述第二灰度小于所述第二预设阈值时,将所述第一区域范围内的状态栏图标或所述第二区域范围内的状态栏图标的颜色显示为黑色。
10.根据权利要求7至9中任一项所述的电子设备,其特征在于,所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
确定所述第一区域的范围和所述第二区域的范围。
11.根据权利要求7至10中任一项所述的电子设备,其特征在于,所述第一应用和所述第二应用是同一个应用,所述第二窗口显示的界面是根据用户对所述第一窗口的界面的操作而产生的。
12.根据权利要求7至11中任一项所述的电子设备,其特征在于,所述电子设备的操作系统为安卓系统、Windows系统和Linux系统中任一项。
13.一种计算机存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1至6中任一项所述的显示方法。
14.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1至6中任一项所述的显示方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210858818.1A CN117472479A (zh) | 2022-07-20 | 2022-07-20 | 显示方法和电子设备 |
PCT/CN2023/107349 WO2024017145A1 (zh) | 2022-07-20 | 2023-07-14 | 显示方法和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210858818.1A CN117472479A (zh) | 2022-07-20 | 2022-07-20 | 显示方法和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117472479A true CN117472479A (zh) | 2024-01-30 |
Family
ID=89617103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210858818.1A Pending CN117472479A (zh) | 2022-07-20 | 2022-07-20 | 显示方法和电子设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117472479A (zh) |
WO (1) | WO2024017145A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6031529A (en) * | 1997-04-11 | 2000-02-29 | Avid Technology Inc. | Graphics design software user interface |
CN108037956A (zh) * | 2017-12-27 | 2018-05-15 | 南昌黑鲨科技有限公司 | 一种显示界面显示方法、显示装置及计算机可读存储介质 |
CN109460272A (zh) * | 2018-09-11 | 2019-03-12 | 广州优视网络科技有限公司 | 针对安卓系统的应用显示方法和装置 |
CN110618849A (zh) * | 2018-12-25 | 2019-12-27 | 北京时光荏苒科技有限公司 | 一种通知栏的设置方法、装置、设备及存储介质 |
CN112346804B (zh) * | 2020-10-28 | 2022-10-11 | 武汉蓝星科技股份有限公司 | 一种linux-android双系统终端的状态栏显示系统及方法 |
-
2022
- 2022-07-20 CN CN202210858818.1A patent/CN117472479A/zh active Pending
-
2023
- 2023-07-14 WO PCT/CN2023/107349 patent/WO2024017145A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024017145A1 (zh) | 2024-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11567623B2 (en) | Displaying interfaces in different display areas based on activities | |
US20220107821A1 (en) | User interface layout method and electronic device | |
US20220197584A1 (en) | Foldable screen display method and electronic device | |
CN113254120B (zh) | 数据处理方法和相关装置 | |
US20240179237A1 (en) | Screenshot Generating Method, Control Method, and Electronic Device | |
US11861382B2 (en) | Application starting method and apparatus, and electronic device | |
CN115981582B (zh) | 显示方法及电子设备 | |
CN114513574B (zh) | 界面显示方法、电子设备及存储介质 | |
US20230236714A1 (en) | Cross-Device Desktop Management Method, First Electronic Device, and Second Electronic Device | |
CN113781959B (zh) | 界面处理方法及装置 | |
WO2022037408A1 (zh) | 一种显示方法及电子设备 | |
WO2024017145A1 (zh) | 显示方法和电子设备 | |
CN112581903B (zh) | 一种像素补偿方法和电子设备 | |
CN114596819B (zh) | 亮度调节方法及相关装置 | |
CN115933952B (zh) | 一种触控采样率调节方法及相关装置 | |
CN116672707B (zh) | 生成游戏预测帧的方法和电子设备 | |
CN116204093B (zh) | 一种页面显示方法及电子设备 | |
WO2023103974A1 (zh) | 内容协同方法、电子设备及计算机可读存储介质 | |
US20230298235A1 (en) | Graffiti pattern generation method and apparatus, electronic device, and storage medium | |
WO2024012354A1 (zh) | 一种显示方法及电子设备 | |
US12028477B2 (en) | Display method applied to electronic device, graphical user interface, and electronic device | |
CN118276724A (zh) | 一种显示方法以及电子设备 | |
US20230269324A1 (en) | Display method applied to electronic device, graphical user interface, and electronic device | |
CN118116117A (zh) | 人群识别方法、设备及存储介质 | |
CN117270720A (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 |