掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本申请涉及终端技术领域,尤其涉及一种柔性屏幕的显示方法及电子设备。

背景技术

柔性屏幕也可称为柔性OLED(organic light-emitting diode,有机发光二极管),相较于传统屏幕,柔性屏幕不仅在体积上更加轻薄,同时基于其可弯曲、柔韧性佳的特性,柔性屏幕的耐用程度也大大高于传统屏幕。

目前,一些厂商已经将柔性屏幕应用在手机、平板电脑等电子设备中。如图1所示,用户在使用具有柔性屏幕的手机时可以折叠屏幕,使手机的灵活性和便携性更高。但屏幕被折叠后屏幕中的显示内容也随屏幕被分割,屏幕折叠后的显示内容分别显示在两个平面(即平面01和平面02)上,由于平面01和平面02呈一定夹角,因此导致用户在观看和操作手机时非常不方便。

发明内容

本申请提供一种柔性屏幕的显示方法及电子设备,可根据柔性屏幕的物理状态重新布局显示界面中的各个控件,使得用户在观看和使用柔性屏幕时得到较好的体验。

为达到上述目的,本申请采用如下技术方案:

第一方面,本申请提供一种柔性屏幕的显示方法,该柔性屏幕在折叠时可被折叠线划分为第一屏幕和第二屏幕,上述方法包括:当第一屏幕和第二屏幕之间的夹角小于第一预设值(例如90°)或大于第二预设值(例如180°)时,电子设备可在第一屏幕和/或第二屏幕中显示第一界面;当检测到第一屏幕和第二屏幕之间的夹角在第一预设值和第二预设值构成的闭区间内时,柔性屏幕处于开展状态或支架状态,此时,电子设备可确定第一界面中的操作控件和非操作控件;进而,电子设备可在第一屏幕中显示第二界面,第二界面中包括操作控件;并且,电子设备可在第二屏幕中显示第三界面,第三界面中包括非操作控件。

也就是说,当柔性屏幕的物理状态转变为展开状态或支架状态时,电子设备可将正在显示的应用界面中的操作控件与非操作控件分屏显示在柔性屏幕的第一屏幕和第二屏幕中。这样,分屏显示后的操作控件不会对非操作控件产生遮挡,从而使得户获得较好的沉浸式的视觉和操作体验。

在一种可能的实现方式中,当第一屏幕和第二屏幕之间的夹角在第一预设值和第二预设值构成的闭区间内时,还包括:电子设备查询上述第一界面是否为预设的应用界面;当第一界面为预设的应用界面(例如游戏界面)时,说明此时应用运行时可能有分屏显示的需求,则电子设备可进一步确定第一界面中的操作控件和非操作控件。

在一种可能的实现方式中,当第一屏幕和第二屏幕之间的夹角在第一预设值和第二预设值构成的闭区间内时,还包括:电子设备确定第一屏幕和第二屏幕是否为横屏状态;当第一屏幕和第二屏幕均为横屏状态时,说明此时应用运行时可能有分屏显示的需求,则电子设备可进一步确定第一界面中的操作控件和非操作控件。

在一种可能的实现方式中,电子设备确定第一界面中的操作控件和非操作控件,包括:电子设备可以获取第一界面中每个控件的位置和尺寸;进而,电子设备可将尺寸大于预设尺寸的控件确定为非操作控件,并将位于非操作控件所在图层之上控件确定为操作控件。

又或者,当第一控件的尺寸大于预设尺寸时,电子设备还可以进一步确定第一控件所在的图层是否为最顶层的图层。如果第一控件所在的图层不是最顶层的图层,则电子设备可将第一控件确认为非操作控件。

也就是说,电子设备可以根据界面中各个控件的尺寸和位置关系,将显示尺寸较大且靠近底层图层的控件识别为非操作控件,将位于非操作控件之上的控件识别为操作控件。

在一种可能的实现方式中,电子设备确定第一界面中的操作控件和非操作控件,包括:电子设备获取与第一界面对应的预设的配置文件,该配置文件中记录有第一界面中操作控件的显示位置;那么,电子设备按照该配置文件可识别出第一界面中的操作控件,并将第一界面中除操作控件外的控件确定为非操作控件。

在一种可能的实现方式中,第二屏幕为朝向用户的屏幕。这样一来,朝向用户的第二屏幕可为用户显示不需要进行操作和交互的非操作控件,用户可在另一屏幕(即第一屏幕)中操作上述操作控件,使用户获得沉浸式的观看和操作体验。

示例性的,电子设备还可以调用摄像头、红外传感器、接近光传感器或触控器件等识别柔性屏幕中第一屏幕和第二屏幕的具体朝向。又或者,电子设备可以使用加速度传感器等器件检测第一屏幕和第二屏幕与水平面的夹角,当第一屏幕与水平面的夹角小于某一角度时,可确定第二屏幕为朝向用户的屏幕。

在一种可能的实现方式中,在电子设备在第一屏幕中显示第二界面之前,还包括:电子设备获取绘制第一界面的第一视图信息(例如第一界面的视图树),第一视图信息包括第一界面内各个控件之间的图层顺序;进而,电子设备可根据第一视图信息生成与第二界面对应的第二视图信息以及与第三界面对应的第三视图信息,第二视图信息包括该操作控件之间的图层顺序,第三视图信息包括该非操作控件之间的图层顺序;此时,电子设备在第一屏幕中显示第二界面,并且,电子设备在第二屏幕中显示第三界面,包括:电子设备按照第二视图信息在第一屏幕中绘制第二界面;并且,电子设备按照第三视图信息在第二屏幕中绘制第三界面。

可以理解的是,操作控件在第二视图信息中的图层顺序,与在第一视图信息中的图层顺序相同或不同,即操作控件在分屏前后的界面中的图层顺序可以相同或不同。同样,非操作控件在第三视图信息中的图层顺序,与在第一视图信息中的图层顺序相同或不同,即非操作控件在分屏前后的界面中的图层顺序可以相同或不同。

在一种可能的实现方式中,与第一界面对应的配置文件中还可以记录操作控件在第二界面中的显示位置,以及非操作控件在第三界面中的显示位置;此时,电子设备根据第一视图信息生成与第二界面对应的第二视图信息以及与第三界面对应的第三视图信息,包括:电子设备可按照配置文件中记录的操作控件在第二界面中的显示位置,对第一视图信息中的操作控件进行拆分和重组,得到第二视图信息;类似的,电子设备可按照配置文件中记录的非操作控件在第三界面中的显示位置,对第一视图信息中的非操作控件进行拆分和重组,得到第三视图信息。

在一种可能的实现方式中,在电子设备在第一屏幕中显示第二界面之后,还包括:电子设备接收用户在第二界面向操作控件输入的第一触摸事件;电子设备将第一触摸事件映射为在第一界面中的第二触摸事件;电子设备执行与第二触摸事件对应的操作指令。也就是说,各个操作控件被显示在第二界面后,用户可在第二界面中操作各个操作控件继续完成该操作控件的相关功能。

示例性的,电子设备将第一触摸事件映射为在第一界面中的第二触摸事件,包括:电子设备获取第一触摸事件中第一触摸点的坐标;电子设备根据操作控件在第一界面和第二界面上的相对位置关系,计算第一触摸点在第一界面中对应的第二触摸点的坐标;其中,电子设备执行与第二触摸事件对应的操作指令,包括:电子设备将第二触摸点的坐标携带在第二触摸事件中上报给第一应用(第一界面为第一应用的界面),使得第一应用执行与第二触摸事件对应的操作指令。

也就是说,电子设备检测到用户在分屏后的第二界面中输入第一触摸事件后,可将第一触摸事件映射为分屏前在第一界面中的第二触摸事件,使得相关应用最终可响应该第二触摸事件,也即响应了用户在第二界面中输入的第一触摸事件。

第二方面,本申请提供一种电子设备,包括:柔性屏幕,所述柔性屏幕在折叠时被折叠线划分为第一屏幕和第二屏幕;一个或多个处理器;一个或多个存储器;以及一个或多个计算机程序;其中,处理器与柔性屏幕以及存储器均耦合,上述一个或多个计算机程序被存储在存储器中,当电子设备运行时,该处理器执行该存储器存储的一个或多个计算机程序,以使电子设备执行上述任一项所述的柔性屏幕的显示方法。

第三方面,本申请提供一种计算机存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行如第一方面中任一项所述的柔性屏幕的显示方法。

第四方面,本申请提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行如第一方面中任一项所述的柔性屏幕的显示方法。

可以理解地,上述提供的第二方面所述的电子设备、第三方面所述的计算机存储介质,以及第四方面所述的计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。

附图说明

图1为现有技术中柔性屏幕的应用场景示意图;

图2为本申请实施例提供的一种电子设备的结构示意图一;

图3为本申请实施例提供的一种电子设备中柔性屏幕的结构示意图一;

图4为本申请实施例提供的一种电子设备中柔性屏幕的结构示意图二;

图5为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图一;

图6为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图二;

图7为本申请实施例提供的一种电子设备内操作系统的结构示意图;

图8为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图三;

图9为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图四;

图10为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图五;

图11为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图六;

图12为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图七;

图13为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图八;

图14为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图九;

图15为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图十;

图16为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图十一;

图17为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图十二;

图18为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图十三;

图19为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图十四;

图20为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图十五;

图21为本申请实施例提供的一种柔性屏幕的显示方法的应用场景示意图十六;

图22为本申请实施例提供的一种电子设备的结构示意图二。

具体实施方式

下面将结合附图对本实施例的实施方式进行详细描述。

应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个、两个或两个以上。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。

本申请实施例提供的一种柔性屏幕的显示方法可应用于手机、平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、手持计算机、上网本、个人数字助理(personal digital assistant,PDA)、可穿戴电子设备、虚拟现实设备等电子设备中,本申请实施例对此不做任何限制。

示例性的,图2示出了电子设备100的结构示意图。

电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,摄像头193,显示屏194等。

可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。

处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。

处理器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)接口等。

充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。

电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。

电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。

天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。

移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括一个或多个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。

调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。

无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(Bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成一个或多个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。

在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。

电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。

在本申请实施例中,显示屏194具体可以为柔性屏幕。柔性屏幕中可包括显示器件和触摸传感器。显示器件用于向用户输出显示内容,触摸传感器用于接收用户在柔性屏幕上输入的触摸操作。

如图3中的(a)所示,柔性屏幕301在展开状态下可作为一块完整的显示区域进行显示。用户可以沿柔性屏幕301中的一条或多条折叠线折叠屏幕。其中,折叠线的位置可以是预先设置的,也可以是用户在柔性屏幕301的任意位置折叠后形成的。

如图3中的(b)所示,用户沿柔性屏幕301中的折叠线AB折叠柔性屏幕301后,柔性屏幕301可沿折叠线AB被划分为两个显示区域,即显示区域1和显示区域2。在本申请实施例中,折叠后的显示区域1和显示区域2可以作为两个独立的显示区域进行显示。例如,可以将显示区域1称为手机100的主屏,将显示区域2称为手机100的副屏。主屏和副屏的显示面积可以相同或不同。

示例性的,如图4所示,柔性屏幕的大小为2200*2480(单位为像素)。其中,柔性屏幕上折叠线AB的宽度为166。沿折叠线AB折叠后,柔性屏幕右侧大小为1144*2480的区域被划分为主屏41,柔性屏幕左侧大小为890*2480的区域被划分为副屏42。

当用户折叠柔性屏幕之后,被划分出的主屏41和副屏42之间呈一定夹角。在本申请实施例中,手机100可通过一个或多个传感器检测到的数据计算主屏41和副屏42之间的夹角。

示例性的,如图5所示,可以在柔性屏幕的主屏41和副屏42上分别设置陀螺仪和加速度传感器。主屏41上的陀螺仪可检测主屏41转动时的转动角速度,主屏41上的加速度传感器可检测主屏41运动时产生的加速度。进而,手机100可根据主屏41上陀螺仪和加速度传感器检测到的数据确定重力G的大小和方向。同样,手机100也可根据副屏42上陀螺仪和加速度传感器检测到的数据确定重力G的大小和方向。或者,如果使用传感器A能够检测出重力G的大小和方向,则可在主屏41和副屏42上分别设置该传感器A。例如,可以将陀螺仪和加速度传感器集成为一个传感器分别设置在主屏41和副屏42上。

仍如图5所示,可以在主屏41和副屏42上分别设置有对应的坐标系。例如,可以在副屏42中设置笛卡尔坐标系O1,笛卡尔坐标系O1中x轴与副屏42较短的侧边平行,y轴与副屏42较长的侧边平行,z轴垂直于x轴和y轴组成的平面指向副屏42外。同样,可以在主屏41中设置笛卡尔坐标系O2,笛卡尔坐标系O2中x轴与主屏41较短的侧边平行,y轴与主屏41较长的侧边平行,z轴垂直于x轴和y轴组成的平面指向主屏41内。

示例性的,副屏42中的陀螺仪和加速度传感器可在笛卡尔坐标系O1中检测出重力G的大小和方向,主屏41中的陀螺仪和加速度传感器可在笛卡尔坐标系O2中检测出重力G的大小和方向。由于笛卡尔坐标系O1与笛卡尔坐标系O2中y轴的指向相同,因此,重力G在笛卡尔坐标系O1中x轴和z轴平面上的分量G1,与重力G在笛卡尔坐标系O2中x轴和z轴平面上的分量G2大小相等但方向不同。此时,分量G1与分量G2之间的夹角为β,副屏42与主屏41之间夹角α=360°-β。

因此,电子设备100通过计算重力G在笛卡尔坐标系O1中的分量G1与重力G在笛卡尔坐标系O2中的分量G2之间的夹角β,可得到副屏42与主屏41之间的夹角α。

在另一些实施例中,仍如图5所示,由于笛卡尔坐标系O1与笛卡尔坐标系O2中y轴的指向相同,那么,笛卡尔坐标系O1中x轴与笛卡尔坐标系O2中x轴的夹角也等于β。那么,电子设备100还可以检测笛卡尔坐标系O1中x轴与笛卡尔坐标系O2中x轴的夹角β,进而计算副屏42与主屏41之间夹角α=360°-β。

在另一些实施例中,仍如图5所示,由于笛卡尔坐标系O1与笛卡尔坐标系O2中y轴的指向相同,那么,笛卡尔坐标系O1中z轴与笛卡尔坐标系O2中z轴的夹角也等于β。那么,电子设备100还可以检测笛卡尔坐标系O1中z轴与笛卡尔坐标系O2中z轴的夹角β,进而计算副屏42与主屏41之间夹角α=360°-β。

示例性的,当电子设备100的柔性屏幕为内折式柔性屏幕时,副屏42与主屏41之间的夹角α可在0至180°构成的闭区间内变化。当电子设备100的柔性屏幕为外折式柔性屏幕时,副屏42与主屏41之间的夹角α可在180°至360°构成的闭区间内变化。又或者,副屏42与主屏41之间的夹角α也可以在0至360°构成的闭区间内变化,本申请实施例对此不做任何限制。

如图6中的(a)所示,当柔性屏幕中主屏41和副屏42之间的夹角α在[90°,180°)的范围内,且主屏41和副屏42均为横屏状态时,可将此时柔性屏幕的物理状态称为支架状态。如图6中的(b)所示,当主屏41和副屏42之间的夹角α为180°时,可将此时柔性屏幕的物理状态称为展开状态。需要说明的是,上述判断柔性屏幕的物理状态的预设值(例如90°,180°)均为举例说明,在实际应用中本领域技术人员可以根据实际需要设置上述预设值。例如,当检测到主屏41和副屏42之间的夹角增大至175°时,可定义此时柔性屏幕处于展开状态。又例如,当检测到主屏41和副屏42之间的夹角从180°减小至170°,且主屏41和副屏42均为横屏状态时,可定义此时柔性屏幕处于支架状态,本申请实施例对此不做任何限制。

其中,横屏状态是指:主屏41和副屏42的高小于宽的状态,此时显示屏(例如主屏41或副屏42)的高宽比(即高和宽的比)小于1。其中,显示屏的高也可以理解为显示屏的纵向长度,显示屏的宽也可以理解为显示屏的横向长度,显示屏的高宽比也可以理解为显示屏的纵横比(即纵向长度与横向长度的比)。相应的,主屏41和副屏42也可处于竖屏状态。竖屏状态是指:主屏41和副屏42的高大于宽状态,此时显示屏的高宽比(即高和宽的比)大于1。

示例性的,电子设备100可以通过主屏41上的加速度传感器和陀螺仪确定主屏41当前是横屏状态还是竖屏状态;同样,电子设备100可以通过副屏42上的加速度传感器和陀螺仪确定副屏42当前是横屏状态还是竖屏状态。

电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。

ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。

摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。

数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。

视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。

外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。

内部存储器121可以用于存储一个或多个计算机程序,该一个或多个计算机程序包括指令。处理器110可以通过运行存储在内部存储器121的上述指令,从而使得电子设备100执行本申请一些实施例中所提供的显示方法,以及各种功能应用和数据处理等。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统;该存储程序区还可以存储一个或多个应用程序(比如图库、联系人等)等。存储数据区可存储电子设备101使用过程中所创建的数据(比如照片,联系人等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。在另一些实施例中,处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,来使得电子设备100执行本申请实施例中提供的显示方法,以及各种功能应用和数据处理。

电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。

音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。

扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。

受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。

麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置一个或多个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。

耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。

传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。

另外,上述电子设备100中还可以包括按键、马达、指示器以及SIM卡接口等一种或多种部件,本申请实施例对此不做任何限制。

上述电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。

图7是本申请实施例的电子设备100的软件结构框图。

分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。

1、应用程序层

应用程序层可以包括一系列应用程序。

如图7所示,上述应用程序可以包括通话,联系人,相机,图库,日历,地图,导航,蓝牙,音乐,视频,短信息等APP(应用,application)。

在本申请实施例中,一些APP在运行时显示的应用界面中可以既包括图片等无法与用户交互的控件,又包括按钮、进度条等能够与用户交互控件。例如,在运行游戏类应用的应用界面时,该应用界面中可以包括游戏画面以及用于操控游戏的操作手柄。又例如,在运行视频类应用的播放界面时,该播放界面中可以包括正在播放的视频画面以及控制视频播放的控制按钮(例如快进、暂停、弹幕等)。

2、应用程序框架层

应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。

如图7所示,应用程序框架层中可以包括视图系统(view system),通知管理器,活动管理器,窗口管理器,内容提供器,资源管理器,输入法管理器等。

其中,视图系统可用于构建应用程序的显示界面。每个显示界面可以由一个或多个控件组成。一般而言,控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、微件(Widget)等界面元素。

视图系统在绘制显示界面时可获取对应显示界面的视图信息,该视图信息中记录了需要绘制的显示界面中各个控件之间的图层关系。示例性的,显示界面中的各个控件一般按照树状结构分层组织,形成一个完整的ViewTree(视图树),该视图树可称为上述显示界面的视图信息。视图系统可根据ViewTree中设置好的各个控件之间的图层关系绘制显示界面。在绘制显示界面中的每一个控件时都对应一组绘制指令,例如DrawLine、DrawPoint、DrawBitmap等。视图系统可按照ViewTree中各个控件之间的图层关系,依次调用相应控件的绘制指令绘制该控件。

例如,图8中的(a)为微信APP的聊天界面801,聊天界面801最底层的控件为根节点(root),根节点下设置有底图802这一控件,底图802中还包括以下控件:标题栏803、聊天背景804以及输入栏805。其中,标题栏803中进一步包括返回按钮806和标题807,聊天背景804中进一步包括头像808和气泡809,输入栏805中进一步包括语音输入按钮图标810、输入框811以及发送按钮812。这些控件按照顺序分层可形成如图8中(b)所示的视图树A。视图树A中记录了聊天界面801内各个控件之间的图层顺序。其中,底图802位于根节点下,标题栏803、聊天背景804以及输入栏805均为底图802的子节点。返回按钮806和标题807均为标题栏803的子节点。头像808和气泡809均为聊天背景804的子节点。语音输入按钮图标810、输入框811以及发送按钮812均为输入栏805的子节点。

在本申请实施例中,可以在视图系统增加新的识别模块,用于识别应用界面中的操作控件。其中,操作控件是指可与用户交互的控件,即该控件可响应用户的操作呈现相应的功能。例如,上述聊天界面801中的操作控件包括返回按钮806、头像808、气泡809、语音输入按钮图标810、输入框811以及发送按钮812。当然,上述识别模块也可以独立于视图系统单独设置在应用程序框架层,本申请实施例对此不做任何限制。

另外,在应用程序框架层以下的底层系统中还可以设置状态监测服务,用于识别柔性屏幕的位置和形态变化。例如,如图7所示,可将状态监测服务设置在系统库和/或内核层内。

示例性的,状态监测服务可调用传感器服务(sensor service)启动陀螺仪、加速度传感器等传感器进行检测。状态监测服务可根据各个传感器上报的检测数据计算当前主屏41和副屏42之间的夹角。

那么,如果状态监测服务检测到上述柔性屏幕的主屏41和副屏42之间的夹角在第一预设值(例如90°)和第二预设值(例如180°)构成的闭区间内时,状态监测服务可向视图系统上报分屏事件。或者,视图系统可定期从状态监测服务中获取当前柔性屏幕的物理状态。当获取到柔性屏幕处于支架状态或展开状态时,视图系统中的识别模块可识别当前应用界面中的操作控件,并将识别出的一个或多个操作控件显示在柔性屏幕的一个屏幕(例如主屏41)中,同时,将该应用界面中不可与用户交互的控件(后续称为非操作控件)显示在柔性屏幕的另一个屏幕(例如副屏42)中。

也就是说,当柔性屏幕的物理状态转变为展开状态或支架状态时,电子设备可将正在显示的应用界面中的操作控件与非操作控件分屏显示在柔性屏幕的第一屏幕和第二屏幕中。其中,当第一屏幕为主屏41时第二屏幕为副屏42,当第一屏幕为副屏42时第二屏幕为主屏41。例如,在显示视频播放界面时,电子设备可将视频播放界面中进度条、快进、暂停等操作控件显示在副屏中,并将视频播放界面中播放的视频画面(即非操作控件)显示在主屏中。又例如,在显示游戏界面时,电子设备可将游戏界面中的操作手柄等操作控件显示在副屏中,并将游戏界面中的游戏画面(即非操作控件)显示在主屏中。这样,分屏显示后的操作控件不会遮挡上述视频画面或游戏画面,使用户获得沉浸式的视觉和操作体验。

另外,上述活动管理器可用于管理每个应用的生命周期。应用通常以activity的形式运行在操作系统中。活动管理器可以调度应用的activity进程管理每个应用的生命周期。窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等。

3、Android runtime和系统库

Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。

核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。

应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。

系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。

其中,表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。2D图形引擎是2D绘图的绘图引擎。

4、内核层

内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动等,本申请实施例对此不做任何限制。

以下将以手机作为电子设备举例,结合附图详细阐述本申请实施例提供的一种柔性屏幕的显示方法。

示例性的,在本申请实施例中,除了上述支架状态和展开状态外,手机中柔性屏幕的物理状态还可包含折叠状态。以外折式柔性屏幕举例,如图9中的(a)所示,当主屏41和副屏42之间的夹角为360°(或接近360°)时,柔性屏幕处于折叠状态。以内折式柔性屏幕举例,如图9中的(b)所示,当主屏41和副屏42之间的夹角为0(或接近0)时,柔性屏幕处于折叠状态。

以外折式柔性屏幕举例,如图10所示,手机可在主屏41中显示桌面1001,此时副屏42(图10中未示出)可以为黑屏状态。例如,当手机中的状态监测服务根据传感器上报的数据确定主屏41和副屏42之间的夹角β为360°时,状态监测服务可继续调用摄像头、红外传感器、接近光传感器或触控器件等识别手机的具体朝向。

例如,可以在主屏41和副屏42上分别安装摄像头,如果主屏41的摄像头捕捉到人脸信息,而副屏42的摄像头没有捕捉到人脸信息,则状态监测服务可确定当前折叠状态的柔性屏幕处于主屏41朝向用户的状态。

又例如,可以在主屏41和副屏42上分别安装红外传感器,如果副屏42的红外传感器捕捉到人体辐射的红外信号,而主屏41的红外传感器没有捕捉到人体辐射的红外信号,则状态监测服务可确定当前折叠状态的柔性屏幕处于副屏42朝向用户的状态。

又例如,手机还可以通过触控器件上报的用户当前的触摸位置。进而,根据该触摸位置使用预设的抓握算法可确定用户当前抓握手机的抓握姿势。那么,结合手机的抓握姿势,状态监测服务也可确定出手机的具体朝向。示例性的,触控器件检测到触摸事件后可将触摸点的坐标上报给状态监测服务。状态监测服务通过统计触摸点在触控器件中的位置和个数确定手机的抓握姿势。例如,如果检测到落在主屏41中的触摸点的数目大于阈值,说明用户的手指和手掌抓握在主屏41上,则此时朝向用户的屏幕为副屏42。相应的,如果检测到落在副屏42中的触摸点的数目大于阈值,说明用户的手指和手掌抓握在副屏42上,则此时朝向用户的屏幕为主屏41。

那么,在折叠状态下,当检测到柔性屏幕的主屏41朝向用户时,手机可在主屏41中显示图10所示的桌面1001。同样,当检测到柔性屏幕的副屏42朝向用户时,手机可在副屏42中显示上述桌面1001。当然,手机也可以在主屏41(或副屏42)中显示其他应用的应用界面,本申请实施例对此不做任何限制。

仍以手机在主屏41中显示上述桌面1001举例,桌面1001中包含游戏应用的图标1002。如果检测到用户点击图标1002的操作,如图11所示,手机可打开游戏应用并显示游戏应用的游戏界面1101。示例性的,如果该游戏应用支持通过横屏状态显示而不支持通过竖屏状态显示,则手机可自动将游戏界面1101显示为横屏状态。又或者,如果游戏应用既支持横屏状态显示又支持竖屏状态显示,则手机可在检测到用户将手机从竖屏状态旋转为横屏状态后,将游戏界面1101显示为横屏状态。

在一些实施例中,手机中的状态监测服务可定期检测柔性屏幕中主屏41和副屏42之间的夹角,以及主屏41和副屏42是否处于横屏状态。当检测到主屏41和副屏42之间的夹角为180°时,说明柔性屏幕从上述折叠状态切换为展开状态。当检测到主屏41和副屏42之间的夹角在[90,180°)的范围内,且主屏41和副屏42均为横屏状态时,说明柔性屏幕从上述折叠状态切换为支架状态。

当柔性屏幕从折叠状态切换为展开状态或支架状态后,手机可将游戏界面1101中的操作控件和非操作控件分离,并将游戏界面1101中的操作控件显示在柔性屏幕的一个屏幕(例如副屏42)内,将游戏界面1101中的非操作控件显示在柔性屏幕的另一个屏幕(例如主屏41)内。

示例性的,可以在手机内预先设置一个应用白名单,该应用白名单中包括一个或多个应用的标识,例如应用的包名(packagename)。在应用白名单中的应用均支持将应用界面中操作控件和非操作控件分屏显示这一功能。那么,当手机检测到柔性屏幕切换为展开状态(或支架状态)时,手机可获取当前正在运行的应用(例如上述游戏应用)的包名,进而在上述应用白名单中查询该游戏应用是否为预先设置的应用。

又或者,可以在手机内预先设置一个界面白名单,该界面白名单中包括一个或多个应用界面的标识,例如应用界面的activityname。在界面白名单中的应用界面均支持将其操作控件和非操作控件分屏显示这一功能。那么,当手机检测到柔性屏幕切换为展开状态(或支架状态)时,手机可获取当前正在运行的应用界面的activityname,进而在上述界面白名单中查询当前显示的应用界面为预先设置的应用界面。

仍以上述游戏界面1101举例,如图12中的(a)所示,当柔性屏幕为折叠状态时,手机可以横屏状态显示游戏界面1101。如图12中的(b)所示,当检测到柔性屏幕切换为展开状态时,如果游戏界面1101为预先设置的应用界面,则手机可识别游戏界面1101中的操作控件和非操作控件,进而将识别出的非操作控件显示在主屏41中,将识别出的操作控件显示在副屏42中(即将非操作控件和操作控件分屏显示)。当然,如果游戏界面1101不是预先设置的应用或应用界面,则手机可按照现有的显示方式继续显示游戏界面1101,本申请实施例对此不做任何限制。

以下将举例说明手机识别上述游戏界面1101中操作控件和非操作控件的实现方式。

在一些实施例中,如图13所示,手机可以获取在折叠状态下viewsystem绘制上述游戏界面1101时对应的视图树1300。视图树1300中记录了游戏界面1101中各个控件的之间的图层顺序。例如,如图11所示,游戏界面1101的根节点下包括游戏画面1301这一控件,游戏画面1301下包括以下控件:操作手柄1302、攻击按钮1303以及设置栏1304。其中,设置栏1304中又包括第一设置按钮1305、第二设置按钮1306。

在视图树1300中,如图13所示,游戏画面1301为根节点的子节点,操作手柄1302、攻击按钮1303以及设置栏1304均为游戏画面1301的子节点,位于游戏画面1301所在的图层之上。第一设置按钮1305和第二设置按钮1306均为设置栏1304的子节点,位于设置栏1304所在的图层之上。并且,手机可记录视图树1300中每个控件的位置和大小,以及绘制每个控件时对应的绘图指令。在绘制游戏界面1101时,手机可按照视图树1300先绘制游戏画面1301,进而在游戏画面1301上绘制操作手柄1302、攻击按钮1303以及设置栏1304,再在设置栏1304上绘制第一设置按钮1305和第二设置按钮1306。

那么,手机检测到柔性屏幕从图12中的(a)所示的折叠状态切换为图12中的(b)所示的展开状态时,手机可获取上述视图树1300,并查询视图树1300中每个控件的位置和大小。一般,操作控件通常位于非操作控件上层的图层中,非操作控件通常作为底图显示在操作控件下层的图层中,且非操作控件的尺寸一般比较大。当手机查询到游戏画面1301这一控件的大小与整个主屏41的大小相同或接近时,手机可将游戏画面1301确认为游戏界面1101中的非操作控件。并且,手机可将视图树1300中游戏画面1301的各个子节点识别为操作控件。

又或者,当手机查询到游戏画面1301这一控件的大小与整个主屏41的大小相同或接近时,还可以进一步确定游戏画面1301所在的图层是否为最顶层的图层。如果游戏画面1301所在的图层不是最顶层的图层,则手机可将游戏画面1301确认为游戏界面1101中的非操作控件。并且,手机可将位于游戏画面1301所在的图层上的各个控件确定为操作控件。

也就是说,手机可以根据绘制当前应用界面时各个控件的尺寸和位置关系,将显示尺寸较大且靠近应用画面底层图层的控件识别为非操作控件,将位于非操作控件之上的控件识别为操作控件。

在另一些实施例中,手机获取到柔性屏幕在折叠状态下绘制上述游戏界面1101时对应的视图树1300后,手机还可以获取视图树1300中每个控件的具体类型。例如,控件可包括图像控件(Image View)、文本控件(Text View)、按钮(Button)、导航栏(ActionBar)、文本框、对话框、状态栏等类型。

例如,手机中的视图系统可以将视图树1300中各个控件的标识或位置发送给游戏应用,请求游戏应用根据控件的标识或位置查询视图树1300中各个控件的具体类型。又例如,手机可在绘制视图树1300中的每个控件时在对应的字段中记录控件的类型。那么,手机可从对应的字段中查找视图树1300中各个控件的具体类型。

示例性的,当某一控件为图像控件(Image View)或文本控件(Text View)等类型的控件时,手机可确认该控件为非操作控件。例如,上述游戏界面1101中的游戏画面1301为Image View类型的非操作控件。当某一控件为按钮(Button)、导航栏(ActionBar)、文本框、对话框、状态栏等类型的控件时,手机可确认该控件为操作控件。例如,上述游戏界面1101中的操作手柄1302、攻击按钮1303以及设置栏1304中的各个控件均为操作控件。

在另一些实施例中,还可以预先在手机内保存与上述游戏界面1101对应的配置文件。该配置文件中记录有上述游戏界面1101中的操作控件。例如,该配置文件中可以记录分屏前(即柔性屏幕处于折叠状态时)游戏界面1101中操作控件的具体显示位置。又例如,该配置文件中还可以记录分屏后(即柔性屏幕处于展开或支架状态时)上述操作控件在主屏或副屏中的具体位置。又例如,该配置文件中还可以记录分屏后操作控件的平移距离、缩放比例、旋转角度等信息。

示例性的,与上述游戏界面1101对应的配置文件1可以为:

一般,每个配置文件中均记录了对应的packagename、activityname以及分屏前操作控件的位置。那么,当手机检测到柔性屏幕从图12中的(a)所示的折叠状态切换为图12中的(b)所示的展开状态时,手机可以根据当前运行的游戏应用的packagename和activityname查找到对应的配置文件(例如上述配置文件1)。进而,手机根据配置文件1可识别出游戏界面1101内的操作控件1。例如,手机可根据配置文件1中记录的分屏前操作控件1的具体位置识别游戏界面1101中的操作控件1具体为哪个控件。这样,通过遍历配置文件1中分屏前所有操作控件的位置,手机可识别出游戏界面1101中的各个操作控件。另外,手机可将游戏界面1101中除操作控件外的控件识别为非操作控件。

示例性的,手机通过上述方法可以识别出游戏界面1101中的操作控件包括:操作手柄1302、攻击按钮1303以及设置栏1304中的各个控件,游戏界面1101中的非操作控件包括游戏画面1301。进而,仍如图12中的(b)所示,手机可将非操作控件显示主屏41中,将操作控件显示在副屏42中。或者,手机也可将非操作控件显示副屏42中,将操作控件显示在主屏41中。

上述实施例是以柔性屏幕从折叠状态切换为展开状态举例说明的,如图14所示,如果检测到柔性屏幕从折叠状态切换为支架状态,即主屏41和副屏42之间的夹角处于[90,180)的范围内,且主屏41和副屏42均为横屏状态,手机还可以调用摄像头、红外传感器、接近光传感器或触控器件等识别手机的具体朝向。

如果此时主屏41朝向用户,则仍如图14所示,手机可将识别出的非操作控件显示在主屏41中,将识别出的操作控件显示在副屏42中。如果此时副屏42朝向用户,则手机可将识别出的非操作控件显示在副屏42中,将识别出的操作控件显示在主屏41中。这样一来,朝向用户的屏幕可为用户显示不需要进行操作和交互的控件(例如上述游戏画面1301),用户可使用另一屏幕中的操作控件更新或编辑游戏画面1301中的内容,操作控件不会遮挡游戏画面1301,使用户获得沉浸式的观看体验。

仍以图12中(a)-(b)示出的将上述游戏界面1101中的操作控件显示在副屏42举例,与游戏界面1101对应的配置文件1中不仅记录有分屏前操作控件1(例如操作手柄1302)在主屏41中的位置,还记录有分屏后操作手柄1302在副屏42中的位置。那么,根据配置文件1中各个操作控件在分屏前后的具体位置,手机可确定出分屏后与主屏41对应的视图树以及分屏后与副屏42对应的视图树。

示例性的,图15中的(a)示出了折叠状态下游戏界面1101的视图树1300。手机识别出视图树1300中的操作控件和非操作控件后,可将视图树1300中的操作控件和非操作控件拆分为两个视图树。

示例性的,手机可沿用视图树1300中操作控件的图层关系生成对应的视图树1401,此时,操作控件在视图树1300和视图树1401中的图层关系相同。同样,手机可沿用视图树1300中非操作控件的图层关系生成对应的视图树1402,此时,非操作控件在视图树1300和视图树1402中的图层关系也相同。

又或者,由于配置文件1中记录有分屏后各个操作控件在副屏42中的显示位置,那么,手机也可以将操作控件从视图树1401中拆分出来,并根据配置文件1中记录的各个操作控件在分屏后的显示位置生成对应的视图树1401。此时,操作控件在视图树1300和视图树1401中的图层关系可以相同或不同,本申请实施例对此不做任何限制。

如图15中的(b)所示,由于视图树1300中的操作手柄1302、攻击按钮1303以及设置栏1304中的各个控件均为操作控件,这些操作控件分屏后显示在副屏42中。那么,手机可生成与副屏42对应的视图树1401,视图树1401中包括设置在根节点下的操作手柄1302、攻击按钮1303以及设置栏1304。设置栏1304下还包括两个子节点,即第一设置按钮1305和第二设置按钮1306。视图树1401中各个控件在副屏42中的位置均记录在配置文件1中。

类似的,仍如图15中的(b)所示,由于视图树1300中的游戏画面1301为非操作控件,非操作控件分屏后显示在主屏41中。那么,手机可生成与主屏41对应的视图树1402,视图树1402中包括设置在根节点下的游戏画面1301。游戏画面1301分屏后在主屏41中的位置与绘制视图树1300时游戏画面1301所在的位置相同。

进而,手机可根据视图树1402重新在主屏41中绘制游戏画面1301。示例性的,由于手机在绘制上述游戏界面1101时记录了与每个控件对应的绘图指令,因此,手机在主屏41中重新绘制游戏画面1301时,可仍然使用绘制上述游戏界面1101时游戏画面1301的绘图指令重新绘制游戏画面1301。

同样,手机可根据视图树1403在副屏42中绘制视图树1403中的各个操作控件。以绘制操作手柄1302举例,手机可使用绘制上述游戏界面1101时绘制操作手柄1302的绘制指令,在配置文件1所指示的分屏后操作手柄1302的位置绘制该操作手柄1302。类似的,视图树1403中每层控件中的每个控件均可按照顺序被绘制在副屏42中的相应位置。

在一些实施例中,如果主屏41与副屏42的大小相同,则手机在副屏42中绘制视图树1403中的各个操作控件时,可按照每个操作控件在主屏41中的坐标,将该操作控件绘制在副屏42中。例如,上述游戏界面1101中第一设置按钮1305为40*30的矩形,该矩形在主屏41中左上角的坐标为(380,10),右下角的坐标为(420,40)。那么,手机在副屏42中绘制第一设置按钮1305时,同样可将第一设置按钮1305绘制为40*30的矩形,且将该矩形绘制在副屏42中左上角坐标为(380,10),右下角坐标为(420,40)的区域。

在另一些实施例中,手机将游戏界面1101中的操作控件绘制在副屏42时,还可以改变操作控件的大小或形状。例如,如果上述配置文件1中记录了操作手柄1302在x轴的缩放比例为2,在y轴的缩放比例也为2,则说明分屏后副屏42中操作手柄1302的大小是分屏前游戏界面1101中操作手柄1302的2倍。那么,如图16所示,手机可将游戏界面1101中的操作手柄1302放大2倍后得到新的操作手柄1503,并将操作手柄1503绘制在副屏42中。也就是说,分屏后手机在绘制操作控件时可以占用多或更少的显示空间,使得用户在分屏后操作这些操作控件时获得更好的使用体验。

在另一些实施例中,手机检测到柔性屏幕从折叠状态切换为支架(或展开)状态后,也可根据上述配置文件1在绘制应用界面之前确定即将绘制的应用界面中的操作控件和非操作控件。进而,如图15中的(a)-(b)所示,手机可将原本需要绘制的视图树1300拆分为视图树1401和视图树1402。视图树1401中均为需要绘制的操作控件,视图树1402中均为需要绘制的非操作控件。这样,仍如图15中的(b)所示,手机可按照视图树1401在副屏42中绘制各个操作控件,并按照视图树1402在主屏41中绘制各个非操作控件。也就是说,手机可根据配置文件在绘制应用界面之前识别出应用界面中的操作控件和非操作控件,进而将操作控件和非操作控件分屏显示在主屏41和副屏42中,无需在绘制出上述游戏界面1101后在根据配置文件二次绘制分屏后的界面。

仍如图16所示,手机将上述游戏界面1101中的操作控件绘制在副屏42后形成了第一界面1501,手机将上述游戏界面1101中的非操作控件绘制在主屏后形成了第二界面1502。在本申请实施例中,各个操作控件被分屏至副屏42后,用户可在副屏42中操作各个操作控件继续完成游戏应用的相关功能。

示例性的,手机将上述游戏界面1101中的操作控件绘制在副屏42中后,副屏42上的触摸传感器可实时检测用户在第一界面1501上的触摸操作。如图16所示,用户可触摸第一界面1501中的操作手柄1503控制游戏人物上下左右移动。当用户使用手指移动操作手柄1503开始滑动时,副屏42可将检测到的一系列触摸事件的触摸信息(例如,触摸点的坐标信息、触摸时间等)依次上报给手机的内核层、应用程序框架层以及应用程序层。

以副屏42中的坐标系为第一坐标系,主屏41中的坐标系为第二坐标系举例。如果副屏42检测到的某一触摸事件中触摸点的坐标为P(x,y),结合图7所示的安卓系统的架构图,如图17所示,副屏42通过驱动可将检测到的该触摸事件封装为原始触摸事件上报给内核层,进而由内核层将该原始触摸事件封装为上层可读取的高级触摸事件上报给应用程序框架层。另外,如果副屏42中定义的第一坐标系与手机的操作系统为副屏42定义的第一坐标系不同,例如,副屏42是以左下角为原点设置的第一坐标系,而手机的操作系统可能是以左上角为原点设置的第一坐标系,那么,在将上述原始触摸事件封装为高级触摸事件时,内核层还可以将触摸点的坐标P(x,y)转换为操作系统定义的第一坐标系内的坐标P’(x’,y’)。

应用程序框架层接收到携带有坐标P(x,y)或P’(x’,y’)的高级触摸事件后,可根据上述配置文件1中记录的各个操作控件在分屏后的位置关系,确定出本次的触摸事件是对操作手柄1503执行的操作。进而,应用程序框架层可根据配置文件1中操作手柄1503在分屏前后的位置关系,将上述触摸点为P点的第一触摸事件转换为在第二坐标系内触摸点为Q点的第二触摸事件。

示例性的,如图18中的(a)所示,分屏前操作手柄1302在游戏界面1101中位于以A点(40,40)为圆心,半径为40的圆形区域内。如图18中的(b)所示,分屏后手机按照配置文件1将操作手柄1503显示在副屏42中以B点(80,80)为圆心,半径为80的圆形区域内。相比于操作手柄1302,操作手柄1503在x轴和y轴均被放大了两倍。那么,如果检测到上述第一触摸事件中触摸点P在第一坐标系中的坐标为(100,80),则应用程序框架层可以确定出在第二坐标系中与P点对应的触摸点Q的坐标为(50,40)。也就是说,第一坐标系中操作手柄1503上的触摸点P(x,y)对应于第二坐标系中操作手柄1302上的触摸点Q(0.5x,0.5y)。

进而,应用程序框架层可将携带触摸点Q(0.5x,0.5y)的第二触摸事件中上报给应用层中正在运行的游戏应用,使得游戏应用可以根据触摸点Q(0.5x,0.5y)对用户本次的触摸操作进行响应。也就是说,手机检测到用户在副屏42中输入触摸点P(x,y)的第一触摸事件后,游戏应用最终向用户响应的是在主屏41中Q(0.5x,0.5y)点的第二触摸事件,这样,手机将操作控件和非操作控件分屏显示后,应用也能够正常响应分屏后用户对操作控件执行的触摸操作。

需要说明的是,上述实施例中是以上述游戏界面1101举例阐述游戏界面1101分屏前后的显示方法。可以理解的是,手机还可以在运行其他应用或应用界面时按照上述方法对应用界面中的操作控件和非操作控件进行分屏显示。另外,上述实施例中是以外折式柔性屏幕举例说明的,可以理解的是,对于内折式柔性屏幕,手机也可按照上述方法对应用界面中的操作控件和非操作控件进行分屏显示,本申请实施例对此不做任何限制。

示例性的,如图19中的(a)所示,当主屏41和副屏42之间的夹角为0(或接近0)时,内折式柔性屏幕处于折叠状态。此时主屏41和副屏42均可为黑屏状态。如果检测到主屏41和副屏42之间的夹角为180°,说明此时柔性屏幕从折叠状态切换为展开状态。如果检测到主屏41和副屏42之间的夹角在[90,180)的范围内,且主屏41和副屏42均为横屏状态时,说明此时柔性屏幕从折叠状态切换为支架状态。

在支架状态下,手机可解锁柔性屏幕的主屏41或副屏42,也可将主屏41和副屏42作为一个完整的显示区域解锁后进行显示。如图19中的(b)所示,手机解锁主屏41后可在主屏41中显示桌面1801。桌面1801中包括视频应用的图标1802。如果检测到用户打开该视频应用的操作,手机可打开视频应用显示视频应用的各个应用界面。

如图20中的(a)所示,当检测到主屏41显示视频应用的播放界面1901时,手机可自动按照上述实施例中的方法识别播放界面1901中的操作控件和非操作控件。如果识别出播放界面1901中的视频画面1902为非操作控件,播放界面1901中的进度条1903、播放按钮1904、快进按钮1905、弹幕按钮1906以及返回按钮1907为操作控件,则如图20中的(b)所示,手机可将视频画面1902(即非操作控件)显示在朝向用户的主屏41中,并将进度条1903、播放按钮1904、快进按钮1905、弹幕按钮1906以及返回按钮1907(即操作控件)显示在副屏42中。后续,用户可以在副屏42中操作各个操作控件控制视频应用,这些操作控件不会对主屏41中的视频画面1902产生遮挡,使用户获得沉浸式的观看和使用体验。

又或者,仍以内折式柔性屏幕举例,如果手机在锁屏前正在前台运行上述视频应用的播放界面1901,如图21中的(a)所示,用户锁屏后可将柔性屏幕折叠,或用户将柔性屏幕折叠后手机可自动锁屏。如图21中的(b)所示,当检测到柔性屏幕从折叠状态切换为展开状态(或支架状态),且屏幕解锁后,手机可自动将上述播放界面1901中的视频画面1902(即非操作控件)显示在主屏41中,并将进度条1903、播放按钮1904、快进按钮1905、弹幕按钮1906以及返回按钮(即操作控件)显示在副屏42中。后续,用户可以在副屏42中操作各个操作控件控制视频应用,这些操作控件不会对主屏41中的视频画面1902产生遮挡,使用户获得沉浸式的观看和使用体验。

又或者,当柔性屏幕的主屏41和副屏42之间的夹角小于90°或大于180°时,手机还可以将整个柔性屏幕作为完整的显示区域显示第一界面(例如上述播放界面1901或游戏界面1101)。如果柔性屏幕切换至展开状态或支架状态,即主屏41和副屏42之间的夹角在[90,180°]的范围内时,手机也可按照上述实施例提供的显示方法识别第一界面中的操作控件和非操作控件,并将识别出的操作控件显示在主屏41和副屏42中的一个屏幕中,将识别出的非操作控件显示在主屏41和副屏42中的另一个屏幕中,本申请实施例对此不做任何限制。

本申请实施例公开了一种电子设备,包括处理器,以及与处理器相连的存储器、输入设备、输出设备和通信模块。其中,输入设备和输出设备可集成为一个设备,例如,输入设备和输出设备可为柔性屏幕,柔性屏幕中可包括显示器件和触摸传感器。

此时,如图22所示,上述电子设备可以包括:柔性屏幕2201;一个或多个处理器2202;存储器2203;一个或多个应用程序(未示出);以及一个或多个计算机程序2204,上述各器件可以通过一个或多个通信总线2205连接。其中该一个或多个计算机程序2204被存储在上述存储器2203中并被配置为被该一个或多个处理器2202执行,该一个或多个计算机程序2204包括指令,上述指令可以用于执行上述实施例中的各个步骤。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应实体器件的功能描述,在此不再赘述。

示例性的,上述处理器2202具体可以为图2所示的处理器110,上述存储器2203具体可以为图2所示的内部存储器121和/或外部存储器122,上述柔性屏幕2201具体可以包括图2所示的显示屏194和传感器模块180中的触摸传感器,本申请实施例对此不做任何限制。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何在本申请实施例揭露的技术范围内的变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以所述权利要求的保护范围为准。

相关技术
  • 一种具有柔性屏幕的电子设备的显示方法及电子设备
  • 一种具有柔性屏幕的电子设备的显示方法及电子设备
技术分类

06120113229110