一种应用窗口的显示方法及终端转让专利
申请号 : CN201880068019.6
文献号 : CN111247510B
文献日 : 2021-06-04
发明人 : 朱登奎 , 黄浩 , 杨志超 , 徐斌
申请人 : 华为技术有限公司
摘要 :
权利要求 :
1.一种应用窗口的显示方法,其特征在于,所述方法应用于支持显示多应用窗口的终端中,所述方法包括:
所述终端显示第一用户图形界面GUI,所述第一GUI中包括第一应用窗口;
所述终端接收作用于所述第一应用窗口的输入操作;
响应于所述输入操作,所述终端显示第二GUI,所述第二GUI中包括显示位置固定的软键盘,且所述第二GUI中除所述软键盘之外的区域内包括完整显示的所述第一应用窗口;
其中,所述第二GUI中所述软键盘的显示位置与所述第一GUI中所述第一应用窗口的显示位置部分或全部重叠。
2.根据权利要求1所述的方法,其特征在于,所述终端显示第二GUI,包括:所述终端在所述第二GUI中的固定位置绘制所述软键盘;
所述终端将所述第二GUI中除所述软键盘之外的区域确定为允许绘制应用窗口的绘制区域;
所述终端在所述绘制区域内绘制所述第一应用窗口。
3.根据权利要求2所述的方法,其特征在于,所述终端在所述绘制区域内绘制所述第一应用窗口,包括:
所述终端查询所述第一应用窗口在所述第一GUI中的窗口状态;
所述终端根据所述窗口状态确定所述第一应用窗口在所述第二GUI中的窗口参数,所述窗口参数包括所述第一应用窗口的大小和位置;
所述终端使用所述窗口参数将所述第一应用窗口绘制在所述绘制区域内。
4.根据权利要求3所述的方法,其特征在于,所述第一应用窗口在所述第一GUI中的窗口状态为最大化状态,
其中,所述终端根据所述窗口状态确定所述第一应用窗口在所述第二GUI中的窗口参数,包括:
所述终端将所述绘制区域中最大矩形的位置和大小确定为所述第一应用窗口在所述第二GUI中的窗口参数。
5.根据权利要求3所述的方法,其特征在于,所述第一应用窗口在所述第一GUI中的窗口状态为还原状态,
其中,所述终端根据所述窗口状态确定所述第一应用窗口在所述第二GUI中的窗口参数,包括:
所述终端判断所述第一GUI中的第一应用窗口是否能够设置在所述绘制区域中;
若能够设置在所述绘制区域中,则所述终端将所述第一应用窗口在所述第一GUI中的第一尺寸作为第一应用窗口在所述第二GUI中的大小;并且,所述终端将所述绘制区域中具有所述第一尺寸的位置作为所述第一应用窗口在所述第二GUI中的位置;
若无法设置在所述绘制区域中,则所述终端将所述第一应用窗口从所述第一尺寸缩小为第二尺寸,并且,所述终端将所述绘制区域中具有所述第二尺寸的位置作为所述第一应用窗口在所述第二GUI中的位置。
6.根据权利要求5所述的方法,其特征在于,所述软键盘固定显示在所述第二GUI的底部,所述第一应用窗口在所述第一GUI中的高度D2小于或等于所述绘制区域的高度D1,D1>
0,D2>0;
其中,所述终端将所述绘制区域中具有所述第一尺寸的位置作为所述第一应用窗口在所述第二GUI中的位置,包括:
所述终端将所述第一GUI中第一应用窗口沿第一方向平移第一距离后的位置,确定为所述第一应用窗口在所述第二GUI中的位置;
其中,所述第一方向为远离所述软键盘的方向,所述第一距离为所述第一GUI中的第一应用窗口与所述软键盘在所述第一方向上重叠的距离。
7.根据权利要求5所述的方法,其特征在于,所述软键盘固定显示在所述第二GUI的底部,所述第一应用窗口在所述第一GUI中的高度D2大于所述绘制区域的高度D1,D1>0,D2>
0;
其中,所述终端将所述第一应用窗口从所述第一尺寸缩小为第二尺寸,包括:所述终端将所述绘制区域的高度D1作为所述第一应用窗口在所述第二GUI中的高度,并将所述第一应用窗口在所述第一GUI中的宽度作为所述第一应用窗口在所述第二GUI中的宽度,得到所述第一应用窗口在所述第二GUI中的大小。
8.根据权利要求5所述的方法,其特征在于,所述软键盘固定显示在所述第二GUI的底部,所述第一应用窗口在所述第一GUI中的高度D2大于所述绘制区域的高度D1,D1>0,D2>
0;
其中,所述终端将所述绘制区域中具有所述第二尺寸的位置作为所述第一应用窗口在所述第二GUI中的位置,包括:
所述终端将所述第一GUI中第一应用窗口沿第一方向平移第二距离后的位置,确定为所述第一应用窗口在所述第二GUI中的位置;
其中,所述第一方向为远离所述软键盘的方向,所述第二距离为所述第一GUI中所述第一应用窗口与所述第一GUI顶部的距离。
9.根据权利要求1‑8中任一项所述的方法,其特征在于,所述第一GUI中还包括第二应用窗口,
其中,所述第二GUI中还包括与所述软键盘不重叠的所述第二应用窗口;所述第二GUI中所述软键盘的显示位置与所述第一GUI中所述第二应用窗口的显示位置部分或全部重叠。
10.根据权利要求9所述的方法,其特征在于,所述第二GUI中显示的所述第一应用窗口与所述第二应用窗口不重叠。
11.一种终端,其特征在于,所述终端支持显示多应用窗口,所述终端包括:显示单元,用于:显示第一GUI,所述第一GUI中包括第一应用窗口;
输入单元,用于:接收作用于所述第一应用窗口的输入操作;
所述显示单元,还用于:显示第二GUI,所述第二GUI中包括显示位置固定的软键盘,且所述第二GUI中除所述软键盘之外的区域内包括完整显示的所述第一应用窗口;
其中,所述第二GUI中所述软键盘的显示位置与所述第一GUI中所述第一应用窗口的显示位置部分或全部重叠。
12.根据权利要求11所述的终端,其特征在于,所述终端还包括:绘制单元,用于:在所述第二GUI中的固定位置绘制所述软键盘;
确定单元,用于:将所述第二GUI中除所述软键盘之外的区域确定为允许绘制应用窗口的绘制区域;
所述绘制单元,还用于:在所述绘制区域内绘制所述第一应用窗口。
13.根据权利要求12所述的终端,其特征在于,所述绘制单元,具体用于:查询所述第一应用窗口在所述第一GUI中的窗口状态;根据所述窗口状态确定所述第一应用窗口在所述第二GUI中的窗口参数,所述窗口参数包括所述第一应用窗口的大小和位置;使用所述窗口参数将所述第一应用窗口绘制在所述绘制区域内。
14.根据权利要求13所述的终端,其特征在于,所述第一应用窗口在所述第一GUI中的窗口状态为最大化状态,
所述确定单元,还用于:将所述绘制区域中最大矩形的位置和大小确定为所述第一应用窗口在所述第二GUI中的窗口参数。
15.根据权利要求13所述的终端,其特征在于,所述第一应用窗口在所述第一GUI中的窗口状态为还原状态,
所述确定单元,还用于:判断所述第一GUI中的第一应用窗口是否能够设置在所述绘制区域中;若能够设置在所述绘制区域中,则将所述第一应用窗口在所述第一GUI中的第一尺寸作为第一应用窗口在所述第二GUI中的大小;并且,所述终端将所述绘制区域中具有所述第一尺寸的位置作为所述第一应用窗口在所述第二GUI中的位置;若无法设置在所述绘制区域中,则将所述第一应用窗口从所述第一尺寸缩小为第二尺寸,并且,所述终端将所述绘制区域中具有所述第二尺寸的位置作为所述第一应用窗口在所述第二GUI中的位置。
16.根据权利要求15所述的终端,其特征在于,所述软键盘固定显示在所述第二GUI的底部,所述第一应用窗口在所述第一GUI中的高度D2小于或等于所述绘制区域的高度D1,D1>0,D2>0;
所述确定单元,具体用于:将所述第一GUI中第一应用窗口沿第一方向平移第一距离后的位置,确定为所述第一应用窗口在所述第二GUI中的位置;其中,所述第一方向为远离所述软键盘的方向,所述第一距离为所述第一GUI中的第一应用窗口与所述软键盘在所述第一方向上重叠的距离。
17.根据权利要求15所述的终端,其特征在于,所述软键盘固定显示在所述第二GUI的底部,所述第一应用窗口在所述第一GUI中的高度D2大于所述绘制区域的高度D1,D1>0,D2>0;
所述确定单元,具体用于:将所述绘制区域的高度D1作为所述第一应用窗口在所述第二GUI中的高度,并将所述第一应用窗口在所述第一GUI中的宽度作为所述第一应用窗口在所述第二GUI中的宽度,得到所述第一应用窗口在所述第二GUI中的大小;将所述第一GUI中第一应用窗口沿第一方向平移第二距离后的位置,确定为所述第一应用窗口在所述第二GUI中的位置;其中,所述第一方向为远离所述软键盘的方向,所述第二距离为所述第一GUI中所述第一应用窗口与所述第一GUI顶部的距离。
18.一种终端,其特征在于,包括:处理器、存储器、显示器和通信接口;
所述存储器用于存储计算机执行指令,所述处理器与所述存储器耦接,当所述终端运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述终端执行如权利要求1‑10中任一项所述的应用窗口的显示方法。
19.一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令在终端上运行时,使得所述终端执行如权利要求1‑10中任一项所述的应用窗口的显示方法。
20.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在终端上运行时,使得所述终端执行如权利要求1‑10中任一项所述的应用窗口的显示方法。
说明书 :
一种应用窗口的显示方法及终端
技术领域
背景技术
及应用B的应用窗口2,这样用户可以同时打开和看到多个应用的界面。
示软键盘12。而软键盘12一般固定从当前显示界面的底部弹出,固定占据当前显示界面的
部分显示空间。
得用户无法看到输入的内容,只能进行“盲打”,严重降低了终端的输入效率。
发明内容
接收作用于该第一应用窗口的输入操作;响应于该输入操作,终端显示第二GUI,第二GUI中
包括显示位置固定的软键盘,并且,该第二GUI中除该软键盘之外的区域内包括完整显示的
第一应用窗口;其中,第二GUI中软键盘的显示位置与第一GUI中第一应用窗口的显示位置
部分或全部重叠。
端向各个应用窗口提供输入法服务时,不会因为软键盘对应用窗口的遮挡而影响用户的输
入效率和输入体验。
绘制区域;终端在该绘制区域内绘制第一应用窗口。由于绘制区域与软键盘显示的区域不
重叠,因此终端在绘制区域内绘制的第一应用窗口也不会与软键盘重叠,从而避免终端显
示软键盘时遮挡第一应用窗口。
窗口在第二GUI中的窗口参数,该窗口参数包括第一应用窗口的大小和位置;进而,终端使
用该窗口参数将第一应用窗口绘制在该绘制区域内。
的位置和大小确定为第一应用窗口在第二GUI中的窗口参数。
口是否能够设置在该绘制区域中;若能够设置在该绘制区域中,则终端将第一应用窗口在
第一GUI中的第一尺寸作为第一应用窗口在第二GUI中的大小;并且,终端将该绘制区域中
具有第一尺寸的位置作为第一应用窗口在第二GUI中的位置;若无法设置在该绘制区域中,
则终端将第一应用窗口从第一尺寸缩小为第二尺寸,并且,终端将该绘制区域中具有第二
尺寸的位置作为第一应用窗口在第二GUI中的位置。
的位置作为第一应用窗口在第二GUI中的位置,具体包括:终端将第一GUI中第一应用窗口
沿第一方向(第一方向为远离该软键盘的方向)平移第一距离(第一距离为第一GUI中的第
一应用窗口与该软键盘在第一方向上重叠的距离)后的位置,确定为第一应用窗口在第二
GUI中的位置。
尺寸,具体包括:终端将上述绘制区域的高度D1作为第一应用窗口在第二GUI中的高度,并
将第一应用窗口在第一GUI中的宽度作为第一应用窗口在第二GUI中的宽度,得到第一应用
窗口在第二GUI中的大小。
确定为第一应用窗口在第二GUI中的位置;其中,第一方向为远离该软键盘的方向,第二距
离为第一GUI中第一应用窗口与第一GUI顶部的距离。
第二应用窗口的显示位置部分或全部重叠。也就是说,在运行有软键盘的应用场景下,终端
在绘制任意应用窗口时均可将该应用窗口绘制在不与软键盘重叠的绘制区域。这样,不仅
仅是软键盘提供输入法服务的第一应用窗口在显示时不会被软键盘遮挡,终端屏幕中的其
他应用窗口(例如第二应用窗口)在显示时也不会被软键盘遮挡。
一应用窗口的输入操作;该显示单元,还用于:显示第二GUI,第二GUI中包括显示位置固定
的软键盘,且第二GUI中除该软键盘之外的区域内包括完整显示的第一应用窗口;其中,第
二GUI中该软键盘的显示位置与第一GUI中第一应用窗口的显示位置部分或全部重叠。
窗口的绘制区域;该绘制单元,还用于:在该绘制区域内绘制第一应用窗口。
括第一应用窗口的大小和位置;使用该窗口参数将第一应用窗口绘制在该绘制区域内。
GUI中的窗口参数。
设置在该绘制区域中,则将第一应用窗口在第一GUI中的第一尺寸作为第一应用窗口在第
二GUI中的大小;并且,终端将该绘制区域中具有第一尺寸的位置作为第一应用窗口在第二
GUI中的位置;若无法设置在该绘制区域中,则将第一应用窗口从第一尺寸缩小为第二尺
寸,并且,终端将该绘制区域中具有第二尺寸的位置作为第一应用窗口在第二GUI中的位
置。
第一应用窗口沿第一方向平移第一距离后的位置,确定为第一应用窗口在第二GUI中的位
置;其中,第一方向为远离该软键盘的方向,第一距离为第一GUI中的第一应用窗口与该软
键盘在第一方向上重叠的距离。
度D1作为第一应用窗口在第二GUI中的高度,并将第一应用窗口在第一GUI中的宽度作为第
一应用窗口在第二GUI中的宽度,得到第一应用窗口在第二GUI中的大小;将第一GUI中第一
应用窗口沿第一方向平移第二距离后的位置,确定为第一应用窗口在第二GUI中的位置;其
中,第一方向为远离该软键盘的方向,第二距离为第一GUI中第一应用窗口与第一GUI顶部
的距离。
器执行该存储器存储的该计算机执行指令,以使终端执行上述任一项应用窗口的显示方
法。
的显示方法。
本申请权利要求及其等同技术的范围之内。
附图说明
具体实施方式
隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含
义是两个或两个以上。
本电脑、车载设备、无人机、超级移动个人计算机(ultra‑mobile personal computer,
UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等支持显示多应用窗口
的任意终端上,本申请实施例对此不作任何限制。
平板电脑100可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部
件,或者可以具有不同的部件配置。
装置108、音频电路109、外设接口110以及电源系统111等部件。这些部件可通过一根或多根
通信总线或信号线(图2中未示出)进行通信。本领域技术人员可以理解,图2中示出的硬件
结构并不构成对平板电脑的限定,平板电脑100可以包括比图示更多或更少的部件,或者组
合某些部件,或者不同的部件布置。
的数据,执行平板电脑100的各种功能和处理数据。在一些实施例中,处理器101可包括一个
或多个处理单元;举例来说,处理器101可以是华为技术有限公司制造的麒麟960芯片。在本
申请一些实施例中,上述处理器101还可以包括指纹验证芯片,用于对采集到的指纹进行验
证。
送给基站。通常,射频电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声
放大器、双工器等。此外,射频电路102还可以通过无线通信和其他设备通信。所述无线通信
可以使用任一通信标准或协议,包括但不限于全球移动通讯系统、通用分组无线服务、码分
多址、宽带码分多址、长期演进、电子邮件、短消息服务等。
程序区以及存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序
(比如声音播放功能、图像播放功能等);存储数据区可以存储根据使用平板电脑100时所创
建的数据(比如音频数据、电话本等)。此外,存储器103可以包括高速随机存取存储器
(ramdom access memory,RAM),还可以包括非易失存储器,例如磁盘存储器件、闪存器件或
其他易失性固态存储器件等。存储器103可以存储各种操作系统,例如,苹果公司所开发的
操作系统,谷歌公司所开发的 操作系统等。上述存储器103可以是独立的,通
过上述通信总线与处理器101相连接;存储器103也可以和处理器101集成在一起。
将采集到的触摸信息发送给其他器件(例如处理器101)。其中,用户在触控板104‑1附近的
触摸操作可以称之为悬浮触控;悬浮触控可以是指,用户无需为了选择、移动或拖动目标
(例如图标等)而直接接触触控板,而只需用户位于终端附近以便执行所想要的功能。此外,
可以采用电阻式、电容式、红外线以及表面声波等多种类型来实现触控板104‑1。
器104‑2。触控板104‑1可以覆盖在显示器104‑2之上,当触控板104‑1检测到在其上或附近
的触摸操作后,传送给处理器101以确定触摸操作的类型,随后处理器101可以根据触摸操
作的类型在显示器104‑2上提供相应的视觉输出。虽然在图2中,触控板104‑1与显示屏104‑
2是作为两个独立的部件来实现平板电脑100的输入和输出功能,但是在某些实施例中,可
以将触控板104‑1与显示屏104‑2集成而实现平板电脑100的输入和输出功能。
全面板的形式配置在平板电脑100的正面,显示屏104‑2也可以以全面板的形式配置在平板
电脑100的正面,这样在平板电脑的正面就能够实现无边框的结构。
电路或者蓝牙芯片等器件。
配置指纹采集器件112,或者在平板电脑100的正面(例如触摸屏104的下方)配置指纹采集
器件112。又例如,可以在触摸屏104中配置指纹采集器件112来实现指纹识别功能,即指纹
采集器件112可以与触摸屏104集成在一起来实现平板电脑100的指纹识别功能;光传感器
可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节触
摸屏104的显示器的亮度,接近传感器可在平板电脑100移动到耳边时,关闭显示器的电源。
作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静
止时可检测出重力的大小及方向,可用于识别平板电脑姿态的应用(比如横竖屏切换、相关
游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于平板电脑100还可
配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
网页和访问流媒体等,它为用户提供了无线的宽带互联网访问。在其他一些实施例中,该
Wi‑Fi装置107也可以作为Wi‑Fi无线接入点,可以为其他终端提供Wi‑Fi网络接入。
斯GLONASS等定位系统的接收器。定位装置108在接收到上述定位系统发送的地理位置后,
将该信息发送给处理器101进行处理,或者发送给存储器103进行保存。在另外的一些实施
例中,该定位装置108还可以是辅助全球卫星定位系统(assisted global positioning
system,AGPS)的接收器,AGPS系统通过作为辅助服务器来协助定位装置108完成测距和定
位服务,在这种情况下,辅助定位服务器通过无线通信网络与终端例如平板电脑100的定位
装置108(即GPS接收器)通信而提供定位协助。在另外的一些实施例中,该定位装置108也可
以是基于Wi‑Fi接入点的定位技术。由于每一个Wi‑Fi接入点都有一个全球唯一的媒体介入
控制(media access control,MAC)地址,终端在开启Wi‑Fi的情况下即可扫描并收集周围
的Wi‑Fi接入点的广播信号,因此可以获取到Wi‑Fi接入点广播出来的MAC地址;终端将这些
能够标示Wi‑Fi接入点的数据(例如MAC地址)通过无线通信网络发送给位置服务器,由位置
服务器检索出每一个Wi‑Fi接入点的地理位置,并结合Wi‑Fi广播信号的强弱程度,计算出
该终端的地理位置并发送到该终端的定位装置108中。
为声音信号输出;另一方面,麦克风114将收集的声音信号转换为电信号,由音频电路109接
收后转换为音频数据,再将音频数据输出至RF电路102以发送给比如另一平板电脑,或者将
音频数据输出至存储器103以便进一步处理。
USB)接口与鼠标连接,通过用户识别模块卡卡槽上的金属触点与电信运营商提供的用户识
别模块卡(subscriber identification module,SIM)卡进行连接。外设接口110可以被用
来将上述外部的输入/输出外围设备耦接到处理器101和存储器103。
电、放电、以及功耗管理等功能。
赘述。
是应用程序层201(即APP层)、应用程序框架层202(即framework层)、系统运行库层203(即
Libraries或native层)和Linux内核层204。
程序模型(driver model)等功能。Linux内核层204同时也作为硬件(例如,CPU、网卡以及内
存等)和软件栈之间的抽象层,它可隐藏具体硬件细节从而为上层(系统运行库层203、应用
程序框架层202以及应用程序层201)提供统一的服务。
件系统管理器(未示出)。系统资源管理器321可以执行对系统资源的控制、分配、恢复等。设
备驱动程序323可以包括例如显示器驱动程序(未示出)、相机驱动程序(未示出)、蓝牙驱动
程序(未示出)、共享存储器驱动程序(未示出)、USB驱动程序(未示出)、键区驱动程序(未示
出)、Wi‑Fi驱动程序(未示出)和/或音频驱动程序(未示出)。此外,根据本申请公开的实施
例,设备驱动程序323可以包括进程间通信(IPC)驱动程序(未示出)。
通过使用编程语言来添加新功能。根据本申请公开的实施例,系统运行库层203可以执行与
输入和输出、存储器的管理、算术功能等相关的功能。
API向APP层201中的应用(APP)提供功能,以使应用能够高效地使用电子设备内的有限系统
资源。
器346、包管理器347、连接管理器348、通知管理器349、位置管理器340、图形管理器341、安
全管理器352和任何其它合适和/或类似的管理器。
100同时打开多个应用窗口时,这多个应用窗口分别对应的多个Activity同时可见,但只有
用户当前操作的一个Activity是最顶层的(即焦点Activity)。
(WindowManagerService)这两个系统服务。
(ActivityRecord),这个ActivityRecord记录了该应用的Activity的状态。
ActivityManagerService会利用这个ActivityRecord作为标识,对应用的Activity进程调
度。
点的管理以及输入法和壁纸管理等。
WindowManagerService可以为每一个应用窗口创建一个与之对应的WindowState。
WindowManagerService以此标示该应用窗口,并用这个WindowState来存储、查询和控制该
应用窗口的状态。
系统默认或用户设置的大小下显示的可拖动的状态。
交互,实现与该操作界面相对应的功能。
用376、闹钟应用377、联系人应用378、语音拨号应用379、电子邮件应用380、日历应用381、
媒体播放器应用382、相册应用383、时钟应用384以及任意其它合适和/或类似的应用。
时也可以只显示这一个应用的应用窗口。
窗口401的标题栏402中还设置有最大化按钮41、最小化按钮42以及关闭按钮43,用户可以
通过点击这些按钮改变应用窗口401的状态。
端可将软键盘404显示在屏幕中的固定位置,例如,显示在屏幕的底部。那么,如果软键盘
404的高度H1大于应用窗口401距离屏幕底部的距离H2,则软键盘404会遮挡住应用窗口401
的部分或全部显示内容,降低了输入效率和用户的输入体验。
的软键盘。如果打开了输入法应用提供的软键盘,则终端可以将屏幕中除了软键盘之外的
区域作为允许绘制该应用窗口的绘制区域,进而调整应用窗口A的大小或位置等窗口参数,
以便终端在该绘制区域内绘制应用窗口A。
会因为软键盘对应用窗口的遮挡而影响用户的输入效率和输入体验。
完整显示在屏幕中的现象。在本申请实施例中,软键盘与应用窗口之间不遮挡或不重叠,指
的是:当终端在屏幕中同时显示应用窗口和软键盘时,应用窗口的所有边界可完整显示在
软键盘之外的区域内。
那么,终端在绘制每一帧显示画面中的每个应用窗口时均可参照步骤S501‑S505提供的应
用窗口的显示方法。
用窗口。
的应用中是否包括输入法应用。
端可以向输入法管理器请求查询当前运行的输入法应用是否打开了软键盘。
键盘关闭。那么,当输入法应用打开软键盘时,输入法管理器可将该标志位的取值设置为1,
当输入法应用关闭软键盘时,输入法管理器可将该标志位的取值设置为0。这样,终端在绘
制目标应用窗口之前,通过读取该标志位的取值可以确定出当前是否运行有软键盘。
是否运行有软键盘。
目标应用窗口。而当输入法应用的软键盘关闭时,可触发输入法管理器向窗口管理器发送
键盘关闭事件,那么,后续窗口管理器可沿用现有技术绘制屏幕中待绘制的每个目标应用
窗口。
制的上述目标应用窗口。
应用窗口。
么,终端可以获取焦点应用的标识(例如焦点应用的包名)以及终端准备绘制的目标应用窗
口的标识,当焦点应用的标识与目标应用窗口的标识相同时,可判断出当前软键盘作用的
应用窗口即为待绘制的目标应用窗口。
601中软键盘602的大小为1280x200,且软键盘602位于屏幕601的底部。
另外,本发明各实施例中所述的屏幕尺寸、软键盘尺寸、绘制区域大小均为示例性说明,在
具体实施方式中,可以根据终端的具体情况确定屏幕尺寸和软键盘尺寸。
域中,则有可能会出现目标应用窗口被软键盘602遮挡的现象。
标应用窗口的绘制区域。后续,终端可在调整后的绘制区域中绘制目标应用窗口。
方1280x600的区域作为上述绘制区域;或者,如图7中的(b)所示,还可以沿屏幕601的侧边
设置大小为320*800的软键盘602,此时,终端可以将屏幕601中与软键盘602相邻960x800的
区域作为上述绘制区域。
包括分别设置在屏幕两侧数字键盘801和字母键盘802,那么,屏幕中除去软键盘之外的区
域是一个凸字形的不规则形状,而应用窗口一般都是规则的矩形,那么,终端可以将该凸字
形区域中包含的最大矩形803确定为上述绘制区域。
域的绘制参数,使得后续终端能够在该绘制区域内绘制应用窗口。
frame)参数,用于表示窗口可见区域大小的vf(visible frame)参数,或者用于表示装饰区
域大小的dcf(décor frame)参数等,本申请实施例对此不做任何限制。
数,以便后续终端可按照计算出的窗口参数绘制该目标应用窗口。
最大化状态或者还原状态。
作为目标应用窗口的窗口参数。示例性的,如图10所示,仍以软键盘602上方大小为
1280x600的区域为绘制区域举例,终端可以将该绘制区域的大小(1280x600)作为目标应用
窗口的大小,将该绘制区域的位置作为目标应用窗口的位置,用以显示最大化状态的目标
应用窗口。
前)该目标应用窗口时目标应用窗口是否完全落入步骤S503确定的绘制区域中。如果完全
落入上述绘制区域中,即目标应用窗口的边界均在绘制区域内,则说明此时显示的软键盘
不会遮挡本次绘制的目标应用窗,因此,终端可将上一次绘制该目标应用窗口时使用的窗
口参数确定为本次绘制目标应用窗口时使用的窗口参数,进而按照该窗口参数在绘制区域
绘制目标应用窗口。
可继续判断本次绘制目标应用窗口时是否需要改变目标应用窗口的大小。
口的位置便可将目标应用窗口绘制在绘制区域内。如果上一次绘制上述目标应用窗口时的
窗口大小无法设置在上述绘制区域中,则说明需要在上一次绘制的目标应用窗口的基础上
缩小目标应用窗口的大小,并改变目标应用窗口的位置,才能使得终端将目标应用窗口绘
制在绘制区域内。
分重叠,重叠部分的高度D3=100。绘制区域位于软键盘602的上部且大小为1280x600,也就
是说,绘制区域的宽度K=1280,绘制区域的高度D1=600。那么,由于D1>D2,因此,在不改
变目标应用窗口大小的情况下终端可以将目标应用窗口绘制在上述绘制区域内。那么,本
次绘制目标应用窗口时目标应用窗口的大小仍为用户手动设置或系统默认的大小,而目标
应用窗口的位置可以为绘制区域中的任意位置。
作为本次绘制目标应用窗口时的窗口大小,绘制该目标应用窗口。那么,如图11中的(b)所
示,当用户点击目标应用窗口中的输入框时,触发终端显示软键盘602,此时目标应用窗口
也同时向上平移至软键盘602的上部,从而避免软键盘602对目标应用窗口的遮挡。
上述绘制区域中。
窗口的高度D2=700。由于D2>D1,因此即使将目标应用窗口向上平移D4距离使得目标应用
窗口位于屏幕的最顶端,软键盘602弹出时仍然会遮挡目标应用窗口中的部分内容。那么,
为了使得目标应用窗口能够绘制在绘制区域内,终端除了改变目标应用窗口的位置这一窗
口参数外,还可以改变目标应用窗口的大小这一窗口参数。
目标应用窗口时新的窗口大小和窗口位置等窗口参数。此时,如图12中的(b)所示,当用户
点击目标应用窗口中的输入框触发软键盘602弹出时,目标应用窗口向上平移且目标应用
窗口的大小缩小至绘制区域以内,从而可避免软键盘602对目标应用窗口的遮挡。
定义的窗口参数,使得后续终端能够按照该窗口参数将目标应用窗口绘制在上述绘制区域
内。
的前提下,终端还可以在任意方向上平移目标应用窗口,以计算出绘制目标应用窗口时使
用的位置和大小等窗口参数,本申请实施例对此不做任何限制。例如,如图7中的(b)所示,
当软键盘沿屏幕的侧边设置时,终端可以通过在水平方向上平移目标应用窗口以计算出绘
制该目标应用窗口时的窗口参数。
S501‑S504,从而保证软键盘提供输入法服务的应用窗口在显示时,不会受到软键盘的遮
挡。
窗口是否是上述软键盘作用的应用窗口,而是按照与上述步骤S503‑S505相同的步骤计算
屏幕中绘制区域的位置和大小,以及绘制目标应用窗口时目标应用窗口的窗口参数,并使
用该窗口参数在绘制区域中绘制目标应用窗口。
用窗口在显示时不会被软键盘遮挡,终端屏幕中的其他应用窗口在显示时也不会被软键盘
遮挡。
位于虚线框上方大小为1280x600的区域确定为允许绘制应用窗口的绘制区域。进而,如图
14中的(b)所示,终端可调整应用窗口1的位置或大小等窗口参数,将应用窗口1绘制在上述
绘制区域中。此时,虽然软键盘602并未向应用窗口1提供输入法服务,但应用窗口1中的显
示内容并不会受到软键盘602的遮挡,从而提高多应用窗口显示时的显示效果。
之间不重叠。
出多个不重叠的窗口模板,例如窗口模板1和窗口模板2。
在计算应用窗口2的窗口参数时,可以将窗口模板2的大小和位置作为应用窗口2的窗口参
数。这样,如图15中的(b)所示,由于窗口模板1和窗口模板2之间不重叠,因此终端后续绘制
出的应用窗口1和应用窗口2之间也不会重叠,从而避免显示多应用窗口时多个应用窗口之
间的遮挡现象。
中为目标应用窗口计算出的窗口参数传递给SurfaceFlinger服务,由SurfaceFlinger服务
负责按照该窗口参数在步骤S503确定的绘制区域中绘制该目标应用窗口的具体显示内容,
最终由终端的显示器显示绘制出的目标应用窗口。
施例提供的一种应用窗口的显示方法,如图16所示,该方法包括:
信应用的目标应用窗口(即第一应用窗口)。
软键盘。仍如图11中的(a)所示,软键盘一般固定显示在图11中(a)所示的虚线区域内,如果
第一GUI中显示的第一应用窗口与该虚线区域发生重叠,则后续终端在上述虚线区域内显
示软键盘时会遮挡第一应用窗口中的显示元素。对此,在本申请实施例中,终端在响应上述
输入操作显示包括软键盘的第二GUI时,可通过执行下述步骤S1603避免软键盘对第一应用
窗口的遮挡。
可沿用上述步骤S501‑S505或S1301‑S1304的方法(此处不再赘述),在与软键盘不重叠的绘
制区域内绘制第二GUI中的第一应用窗口。
绘制上述第一应用窗口时也可跳过步骤S501或S1301,即通过执行S502‑S505或S1302‑
S1304在绘制区域绘制第一应用窗口,使得绘制出的第二GUI中的第一应用窗口不会受到软
键盘的遮挡。
被打开显示之后,该软键盘完全不会遮挡第一应用窗口。此时,终端响应上述输入操作,可
在第二GUI中的固定位置显示软键盘,并按照第一GUI中第一应用窗口的位置和大小在第二
GUI中绘制该第一应用窗口。
述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式
来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的
特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所
描述的功能,但是这种实现不应认为超出本申请实施例的范围。
块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际
实现时可以有另外的划分方式。
其具体包括:显示单元1601、确定单元1602、绘制单元1603以及输入单元1604。
GUI,所述第二GUI中包括显示位置固定的软键盘,且所述第二GUI中除所述软键盘之外的区
域内包括完整显示的所述第一应用窗口;并且,所述第二GUI中所述软键盘的显示位置与所
述第一GUI中所述第一应用窗口的显示位置部分或全部重叠。
绘制区域;所述绘制单元1603,还用于在所述绘制区域内绘制所述第一应用窗口。
述窗口参数包括所述第一应用窗口的大小和位置;使用所述窗口参数将所述第一应用窗口
绘制在所述绘制区域内。
所述第二GUI中的窗口参数。
若能够设置在所述绘制区域中,则将所述第一应用窗口在所述第一GUI中的第一尺寸作为
第一应用窗口在所述第二GUI中的大小;并且,所述终端将所述绘制区域中具有所述第一尺
寸的位置作为所述第一应用窗口在所述第二GUI中的位置;若无法设置在所述绘制区域中,
则将所述第一应用窗口从所述第一尺寸缩小为第二尺寸,并且,所述终端将所述绘制区域
中具有所述第二尺寸的位置作为所述第一应用窗口在所述第二GUI中的位置。
所述第一GUI中第一应用窗口沿第一方向平移第一距离后的位置,确定为所述第一应用窗
口在所述第二GUI中的位置;其中,所述第一方向为远离所述软键盘的方向,所述第一距离
为所述第一GUI中的第一应用窗口与所述软键盘在所述第一方向上重叠的距离。
制区域的高度D1作为所述第一应用窗口在所述第二GUI中的高度,并将所述第一应用窗口
在所述第一GUI中的宽度作为所述第一应用窗口在所述第二GUI中的宽度,得到所述第一应
用窗口在所述第二GUI中的大小;将所述第一GUI中第一应用窗口沿第一方向平移第二距离
后的位置,确定为所述第一应用窗口在所述第二GUI中的位置;其中,所述第一方向为远离
所述软键盘的方向,所述第二距离为所述第一GUI中所述第一应用窗口与所述第一GUI顶部
的距离。
以包括存储模块和通信模块。此时,如图18所示,示出了上述实施例中所涉及的终端的一种
可能的结构示意图,包括处理模块1701、通信模块1702、输入/输出模块1703以及存储模块
1704。
用户的信息以及终端的各种菜单。存储模块1704用于保存终端的程序代码和数据。
Processor,DSP),专用集成电路(Application‑Specific Integrated Circuit,ASIC),现
场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体
管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的
各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含
一个或多个微处理器组合,DSP和微处理器的组合等等。
上还可以集成触控板,用于采集在其上或附近的触摸事件,并将采集到的触摸信息发送给
其他器件(例如处理器等)。
程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全
部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专
用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储
介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计
算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、
数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务
器或数据中心传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者
是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是
磁性介质,(例如,软盘,硬盘、磁带)、光介质(例如,DVD)或者半导体介质(例如固态硬盘
Solid State Disk(SSD))等。
请的保护范围应以所述权利要求的保护范围为准。