CN115826771B - 一种输入法切换方法和电子设备 - Google Patents
一种输入法切换方法和电子设备 Download PDFInfo
- Publication number
- CN115826771B CN115826771B CN202211328558.3A CN202211328558A CN115826771B CN 115826771 B CN115826771 B CN 115826771B CN 202211328558 A CN202211328558 A CN 202211328558A CN 115826771 B CN115826771 B CN 115826771B
- Authority
- CN
- China
- Prior art keywords
- input method
- window
- state
- input
- display
- 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.)
- Active
Links
Abstract
本申请公开了一种输入法切换方法和电子设备,涉及电子设备技术领域,用于在电子设备上切换不同输入法时,使切换后的输入法能够及时地显示在电子设备的显示界面上。该输入法切换方法包括:显示第一输入法;响应于用户切换输入法的操作,隐藏第一输入法后显示第二输入法。其中,第一输入法和第二输入法通过嵌入窗口进行管理,在隐藏第一输入法前,嵌入窗口的显隐状态为显示状态,从开始隐藏第一输入法至显示第二输入法之前的时间段,嵌入窗口的显隐状态禁止改变。
Description
技术领域
本申请涉及电子设备技术领域,尤其涉及一种输入法切换方法和电子设备。
背景技术
输入法是电子设备中用于输入文字的软件工具。通常,电子设备中安装有多种输入法,不同的输入法之间可以互相切换,以满足用户的不同使用需求。
电子设备在由嵌入窗口管理的不同输入法之间切换的过程中,操作系统会根据输入法的窗口的可见性对嵌入窗口的显隐状态进行更新。在输入法切换的过程中,如果嵌入窗口的显隐状态更新不及时,会导致输入法显示异常。例如,切换后的输入法不显示,或显示延迟。这样会影响用户输入文字的效率,进而影响用户体验。
发明内容
本申请实施例提供一种输入法切换方法和电子设备,用于在电子设备上切换由嵌入窗口管理的不同输入法时,使切换后的输入法能够及时地显示在电子设备的显示界面上。
为达到上述目的,本申请的实施例采用如下技术方案:
第一方面,提供了一种输入法切换的方法,该方法包括:显示第一输入法;响应于用户切换输入法的操作,隐藏第一输入法后显示第二输入法。其中:第一输入法和第二输入法通过嵌入窗口进行管理;在隐藏第一输入法前,嵌入窗口的显隐状态为显示状态,从开始隐藏第一输入法至显示第二输入法之前的时间段,嵌入窗口的显隐状态禁止改变。
本申请实施例提供的输入法切换方法,第一输入法和第二输入法均是通过嵌入窗口进行管理的,且只有当嵌入窗口的显隐状态为显示状态时,第一输入法或第二输入法才会显示在显示界面上。通过在开始隐藏第一输入法至显示第二输入法之前的时间段内,使嵌入窗口的显隐状态不随第一输入法的隐藏,以及第二输入法即将显示而改变,仍与第一输入法隐藏前嵌入窗口的显隐状态一致,即显示状态。这样可以保证在切换第一输入法和第二输入法的过程中,嵌入窗口的显隐状态一直保持为显示状态,使得切换后的输入法能够及时地显示在显示界面上。
在一种可能的实施方式中,上述方法还包括:在隐藏第一输入法时,将标记位设为第一状态;在显示第二输入法后,将标记位设为第二状态;在隐藏第一输入法后和显示第二输入法之前,如果要改变嵌入窗口的显隐状态,则查询标记位的状态。其中:第一状态用于指示禁止改变嵌入窗口的显隐状态,第二状态用于指示允许改变嵌入窗口的显隐状态。
在输入法切换的过程中,通过将标记位设为第一状态对嵌入窗口的显隐状态进行保护,使得隐藏第一输入法后第一输入法的窗口的可见性的变化,以及显示第二输入法之前第二输入法的窗口的可见性的变化,不会改变嵌入窗口的显隐状态。
在一种可能的实施方式中,上述将标记位设为第一状态,包括:如果第一输入法的窗口参数、第二输入法的窗口参数均存在,且第一输入法的窗口参数与第二输入法的窗口参数不同,则将标记位设为第一状态。
在一种可能的实施方式中,上述将标记位设为第二状态,包括:如果第一输入法的窗口参数、第二输入法的窗口参数均存在,且第一输入法的窗口参数与第二输入法的窗口参数相同,则将标记位设为第二状态。
在一种可能的实施方式中,确认上述时间段的条件包括:第一输入法的窗口参数、第二输入法的窗口参数均存在。
在一种可能的实施方式中,确认上述时间段的条件还包括:第一输入法的窗口参数与第二输入法的窗口参数不同,且第一输入法或第二输入法的窗口的可见性为显示状态。
结合第一输入法的窗口参数、第二输入法的窗口参数、第一输入法的窗口的可见性,以及第二输入法的窗口的可见性,能够更加精准地确定输入法是否处于从第一输入法切换到第二输入法的时间段。
第二方面,提供了一种电子设备,包括:处理器和存储器;该存储器中存储指令,当该处理器执行指令时,如上述第一方面及其任一实施方式所述的方法被执行。
第三方面,提供了一种计算机可读存储介质,包括指令,当指令在电子设备上执行时,使得电子设备可以执行如第一方面及其任一实施方式所述的方法。
第四方面,提供了一种包含指令的计算机程序产品,当指令在上述电子设备上运行时,使得该电子设备执行如第一方面及其任一实施方式所述的方法。
第五方面,提供了一种芯片系统,该芯片系统包括处理器,用于支持电子设备实现上述第一方面中所涉及的功能。在一种可能的设计中,该电子设备还包括接口电路,接口电路可用于从其它装置(例如存储器)接收信号,或者,向其它装置(例如通信接口)发送信号。该芯片系统可以包括芯片,还可以包括其他分立器件。
其中,第二方面至第五方面的技术效果可参见第一方面及其任一实施方式的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种电子设备的结构示意图;
图2为本申请实施例提供的一种电子设备运行的软件架构的示意图;
图3为本申请实施例提供的输入法切换过程中输入法显示正常的示意图之一;
图4为本申请实施例提供的输入法切换过程中输入法显示异常的示意图之一;
图5为本申请实施例提供的输入法切换过程中输入法显示正常的示意图之二;
图6为本申请实施例提供的输入法切换过程中输入法显示异常的示意图之二;
图7为本申请实施例提供的一种输入法切换方法的流程示意图;
图8为本申请实施例提供的一种芯片系统的结构示意图。
具体实施方式
首先对本申请涉及的一些概念进行描述。
本申请实施例涉及的术语“第一”、“第二”等仅用于区分同一类型特征的目的,不能理解为用于指示相对重要性、数量、顺序等。
本申请实施例涉及的术语“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例涉及的术语“耦合”、“连接”应做广义理解,例如,可以指物理上的直接连接,也可以指通过电子器件实现的间接连接,例如通过电阻、电感、电容或其他电子器件实现的连接。
首先对本申请涉及的概念进行描述。
嵌入窗口(inset):inset是Android在版本R之后引入的一种用于控制状态栏、导航栏、输入法(input method editor,IME)系统窗口等被系统定义为边衬区域的管理结构。
输入法IME:IME是一种为了将各种符号输入计算机或电子设备(如手机、平板电脑等)而采用的编码方法。输入法按照安全等级可以分为:普通输入法和安全输入法。输入法按照编码方法可以分为:拼音输入法(例如全拼输入法)、形码输入法(例如五笔输入法)和音形码输入法(例如二笔输入法)。
本申请实施例提供了一种电子设备,该电子设备可以是一种具有显示功能的设备,电子设备可以是移动的,也可以是固定的。电子设备可以部署在陆地上(例如室内或室外、手持或车载等),也可以部署在水面上(例如轮船等),还可以部署在空中(例如飞机、气球和卫星等)。该电子设备可以称为用户设备(user equipment,UE)、接入终端、终端单元、用户单元(subscriber unit)、终端站、移动站(mobile station,MS)、移动台、终端代理或终端装置等。例如,该电子设备可以是手机、平板电脑、笔记本电脑、智能手环、智能手表、耳机、智能音箱、虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的终端、无人驾驶(self driving)中的终端、远程医疗(remote medical)中的终端、智能电网(smart grid)中的终端、运输安全(transportation safety)中的终端、智慧城市(smart city)中的终端、智慧家庭(smarthome)中的终端等。本申请实施例对电子设备的具体类型和结构等不作限定。下面对电子设备的一种可能结构进行说明。
以电子设备为手机为例,图1示出了电子设备101的一种可能的结构。该电子设备101可以包括处理器210、外部存储器接口220、内部存储器221、通用串行总线(universalserial bus,USB)接口230、电源管理模块240、电池241、无线充电线圈242、天线1、天线2、移动通信模块250、无线通信模块260、音频模块270、扬声器270A、受话器270B、麦克风270C、耳机接口270D、传感器模块280、按键290、马达291、指示器292、摄像头293、显示屏294以及用户标识模块(subscriber identification module,SIM)卡接口295等。
其中,传感器模块280可以包括压力传感器、陀螺仪传感器、气压传感器、磁传感器、加速度传感器、距离传感器、接近光传感器、指纹传感器、温度传感器、触摸传感器、环境光传感器、骨传导传感器等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备101的具体限定。在本申请另一些实施例中,电子设备101可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器210可以包括一个或多个处理单元,例如:处理器210可以为现场可编程门阵列(field programmable gate array,FPGA)、专用集成电路(application specificintegrated circuit,ASIC)、片上系统(system on chip,SoC)、中央处理单元(centralprocessing unit,CPU)、应用处理器(application processor,AP)、网络处理器(networkprocessor,NP)、数字信号处理器(digital signal processor,DSP)、微控制单元(microcontroller unit,MCU)、可编程逻辑器件(programmable logic device,PLD)、调制解调处理器、图形处理器(graphics processing unit,GPU)、图像信号处理器(image signalprocessor,ISP)、控制器、视频编解码器、基带处理器以及神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。例如,处理器210可以是应用处理器AP。或者,上述处理器210可以集成在片上系统(system on chip,SoC)中。或者,上述处理器210可以集成在集成电路(integrated circuit,IC)芯片中。该处理器210可以包括IC芯片中的模拟前端(analogfront end,AFE)和微控制单元(micro-controller unit,MCU)。
其中,控制器可以是电子设备101的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器210中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器210中的存储器为高速缓冲存储器。该存储器可以保存处理器210刚用过或循环使用的指令或数据。如果处理器210需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器210的等待时间,因而提高了系统的效率。
在一些实施例中,处理器210可以包括一个或多个接口。接口可以包括集成电路(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)接口和/或USB接口等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备101的结构限定。在本申请另一些实施例中,电子设备101也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
电源管理模块240用于从充电器接收充电输入。其中,充电器可以是无线充电器(如电子设备101的无线充电底座或者其他可以为电子设备101无线充电的设备),也可以是有线充电器。例如,电源管理模块240可以通过USB接口230接收有线充电器的充电输入。电源管理模块240可以通过电子设备的无线充电线圈242接收无线充电输入。
其中,电源管理模块240为电池241充电的同时,还可以为电子设备供电。电源管理模块240接收电池241的输入,为处理器210、内部存储器221、外部存储器接口220、显示屏294、摄像头293和无线通信模块260等供电。电源管理模块240还可以用于监测电池241的电池容量、电池循环次数、电池健康状态(漏电、阻抗)等参数。在其他一些实施例中,电源管理模块240也可以设置于处理器210中。
电子设备101的无线通信功能可以通过天线1、天线2、移动通信模块250、无线通信模块260、调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备101中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块250可以提供应用在电子设备101上的包括2G/3G/4G/5G等无线通信的解决方案。无线通信模块260可以提供应用在电子设备101上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络)、蓝牙(bluetooth,BT)、全球导航卫星系统(global navigation satellite system,GNSS)、调频(frequency modulation,FM)、近距离无线通信技术(near field communication,NFC)、红外技术(infrared,IR)等无线通信的解决方案。在一些实施例中,电子设备101的天线1和移动通信模块250耦合,天线2和无线通信模块260耦合,使得电子设备101可以通过无线通信技术与网络以及其他设备通信。
电子设备101通过GPU、显示屏294以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏294和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器210可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏294用于显示图像、视频、输入法的窗口等。显示屏294包括显示面板。在一些实施例中,电子设备101可以包括1个或N个显示屏294,N为大于1的正整数。
电子设备101可以通过ISP、摄像头293、视频编解码器、GPU、显示屏294以及应用处理器等实现拍摄功能。ISP用于处理摄像头293反馈的数据。在一些实施例中,ISP可以设置在摄像头293中。摄像头293用于捕获静态图像或视频。在一些实施例中,第一电子设备101可以包括1个或N个摄像头293,N为大于1的正整数。示例性的,本申请实施例的摄像头包括广角摄像头和主摄像头。
外部存储器接口220可以用于连接外部存储卡,例如微闪迪(micro SanDisk,Micro SD)卡,实现扩展电子设备101的存储能力。外部存储卡通过外部存储器接口220与处理器210通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器221可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器210通过运行存储在内部存储器221的指令,从而执行电子设备101的各种功能应用以及数据处理。此外,内部存储器221可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、通用闪存存储器(universal flashstorage,UFS)等。
本申请实施例涉及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
电子设备101可以通过音频模块270、扬声器270A、受话器270B、麦克风270C、耳机接口270D以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块270用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。在一些实施例中,音频模块270可以设置于处理器210中,或将音频模块270的部分功能模块设置于处理器210中。扬声器270A,也称“喇叭”,用于将音频电信号转换为声音信号。受话器270B,也称“听筒”,用于将音频电信号转换成声音信号。麦克风270C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。电子设备101可以设置至少一个麦克风270C。耳机接口270D用于连接有线耳机。耳机接口270D可以是USB接口230,也可以是3.5mm的开放移动终端平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
按键290包括开机键、音量键等。按键290可以是机械按键。也可以是触摸式按键。电子设备101可以接收按键输入,产生与电子设备101的用户设置以及功能控制有关的键信号输入。马达291可以产生振动提示。马达291可以用于来电振动提示,也可以用于触摸振动反馈。指示器292可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息、未接来电、通知等。SIM卡接口295用于连接SIM卡。SIM卡可以通过插入SIM卡接口295,或从SIM卡接口295拔出,实现和电子设备101的接触和分离。电子设备101可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口295可以支持纳SIN(Nano SIM)卡、微SIM(MicroSIM)卡、SIM卡等。在一些实施例中,电子设备101采用嵌入式(embedded SIM,eSIM)卡,eSIM卡可以嵌在电子设备101中,不能和电子设备101分离。
处理器210通过执行内部存储器221中存储的程序、指令来执行本申请实施例提供的输入法切换方法。处理器210运行的程序可以基于操作系统,例如安卓(Android)苹果(iOS)/>视窗(Windows)操作系统等。如图2所示,以处理器210运行的程序基于/>为例,处理器210运行的程序按照功能进行分层,可以包括应用程序层和系统框架层。
应用程序层可以包括输入法应用程序。
系统框架层可以包括窗口管理框架和输入法框架。系统框架层可以用于控制应用程序层的输入法应用程序。
电子设备在由嵌入窗口管理的不同输入法之间切换的过程中,操作系统会根据输入法的窗口的可见性对嵌入窗口的显隐状态进行更新。当嵌入窗口的显隐状态为显示状态时,输入法才会显示在电子设备的显示界面上。在输入法切换的过程中,如果嵌入窗口的显隐状态更新不及时,会导致输入法显示异常。例如,切换后的输入法不显示、切换后的输入法延迟显示,或者,切换后的输入法显示在电子设备的显示界面上之后,对应的提示输入框没有显示。
以电子设备为手机,在显示界面上对由嵌入窗口管理的第一输入法和第二输入法进行切换为例进行说明。在将显示界面上的第一输入法切换到第二输入法的过程中:首先,解除第一输入法与显示界面的链接,并将第一输入法的窗口的可见性设为隐藏状态,再根据第一输入法的窗口的可见性将嵌入窗口的显隐状态由显示状态更新为隐藏状态,这样显示界面不再显示第一输入法;然后,建立第二输入法与显示界面的链接,并将第二输入法的窗口的可见性设为显示状态,再根据第二输入法的窗口的可见性将嵌入窗口的显隐状态由隐藏状态更新为显示状态,这样显示界面上才会显示第二输入法。也就是说,输入法的窗口的可见性会影响嵌入窗口的显隐状态,且嵌入窗口的显隐状态也会影响输入法能否显示在显示界面上。
在从第一输入法切换到第二输入法的过程中,如果无法及时地根据第一输入法的窗口的可见性和第二输入法的窗口的可见性更新嵌入窗口的显隐状态,会导致切换后的第二输入法在显示界面上显示异常。例如:当第一输入法的窗口的可见性设为隐藏状态后,嵌入窗口的显隐状态也相应地更新为隐藏状态,但是,当第二输入法的窗口的可见性设为显示状态后,嵌入窗口的显隐状态没有从隐藏状态更新为显示状态,或延迟一段时间后才从隐藏状态更新为显示状态,那么切换后的第二输入法不会显示在显示界面上,或延迟显示在显示界面上。
在第二输入法具有对应的提示输入框的情况下,在从第一输入法切换到第二输入法的过程中,第二输入法的窗口的可见性已设为显示状态,如果嵌入窗口的显隐状态没有从隐藏状态更新为显示状态,或延迟一段时间后才从隐藏状态更新为显示状态,会导致第二输入法虽然在显示界面上显示了,但是第二输入法对应的提示输入框不会显示在显示界面上,或延迟显示在显示界面上。
示例性的,下面以显示界面为账户登录界面,第一输入法为普通输入法,第二输入法为安全输入法为例进行描述。如图3所示,手机的账户登录界面301可以包括:电子邮箱地址编辑框302、密码编辑框303,以及与电子邮箱地址编辑框302对应的普通输入法304。
如图3所示,当用户点击密码编辑框303触发输入法切换命令后,作为对该点击操作的响应,手机的账户登录界面301上显示的输入法从普通输入法304切换到与密码编辑框303对应的安全输入法305。如图4所示,如果用户频繁点击电子邮箱地址编辑框302和密码编辑框303的情况下,点击了密码编辑框303后,手机无法对该点击操作作出及时地响应,会导致切换后的安全输入法305延迟显示在账户登录界面上。
如图5所示,当用户点击密码编辑框303后,作为对该点击操作的响应,手机的账户登录界面301上显示的输入法从普通输入法304切换到与密码编辑框303对应的安全输入法305,且账户登录界面301上还会显示密码的提示输入框306。密码的提示输入框306位于安全输入法305的上方。如图6所示,如果用户频繁点击电子邮箱地址编辑框302和密码编辑框303的情况下,点击了密码编辑框303后,手机无法对该点击操作作出及时地响应,会导致切换后的安全输入法305显示在账户登录界面上之后,密码的提示输入框306延迟显示在账户登录界面上。
本申请实施例提供的输入法切换方法和电子设备,可以实现电子设备在切换由嵌入窗口管理的不同的输入法的过程中,禁止改变嵌入窗口的显隐状态,使其与输入法切换前嵌入窗口的显隐状态保持一致,均为显示状态,从而使得电子设备的显示界面上能够及时的显示切换后的输入法。如图7所示,该输入法切换方法包括:
S101、显示第一输入法。
如图3所示,在用户点击密码编辑框之前,账户登录界面上显示有普通输入法,即第一输入法。
S102、响应于用户切换输入法的操作,隐藏第一输入法后显示第二输入法。
如图3所示,用户可以通过点击密码编辑框触发切换输入法命令,作为对该点击操作的响应,账户登录界面上显示安全输入法。
其中,第一输入法和第二输入法通过嵌入窗口进行管理,在隐藏第一输入法前,嵌入窗口的显隐状态为显示状态,从开始隐藏第一输入法至显示第二输入法之前的时间段,嵌入窗口的显隐状态禁止改变。
由于第一输入法和第二输入法通过嵌入窗口进行管理,所以嵌入窗口的显隐状态会影响第一输入法和第二输入法能否显示。第一输入法的窗口的可见性和第二输入法的窗口的可见性的变化也会改变嵌入窗口的显隐状态。在从第一输入法切换至第二输入法的过程中,第一输入法隐藏,即第一输入法的窗口的可见性由显示状态更新为隐藏状态,使嵌入窗口的显隐状态也由显示状态更新为隐藏状态。在第二输入法开始显示到显示之前的过程中,第二输入法的窗口的可见性由隐藏状态更新为显示状态,如果嵌入窗口的显隐状态仍为隐藏状态,那么第二输入法也不会显示。而本申请实施例中,从开始隐藏第一输入法至显示第二输入法之前的时间段,嵌入窗口的显隐状态禁止改变,均为显示状态。这样就会避免从第一输入法切换至第二输入法的过程中,嵌入窗口的显隐状态无法及时更新的问题,从而使得切换后的第二输入法能够及时地显示在显示界面上。
进一步地,在从开始隐藏第一输入法至显示第二输入法之前的时间段,为了禁止改变嵌入窗口的显隐状态,可以通过设置标记位的状态来决定是否允许改变嵌入窗口的显隐状态。在隐藏第一输入法时,将标记位设为第一状态。标记位为第一状态,可以用于指示禁止改变嵌入窗口的显隐状态。在显示第二输入法后,将该标记位设为第二状态。标记位为第二状态,可以用于指示允许改变嵌入窗口的显隐状态。在隐藏第一输入法后和显示第二输入法之前,如果要改变嵌入窗口的显隐状态,则需要查询标记位的状态。
根据标记位的状态,确定是否需要改变嵌入窗口的显隐状态。如果标记位为第一状态,且输入法处于切换状态,则禁止改变嵌入窗口的显隐状态。
具体的,将标记位设为第一状态的条件可以包括:如果第一输入法的窗口参数、第二输入法的窗口参数均存在,且第一输入法的窗口参数与第二输入法的窗口参数不同。
示例性的,以布尔值来表示标记位的状态,以布尔值为真(true)表示第一状态为例,将标记位设为第一状态可以通过以下代码实现。
其中,win表示第一输入法的窗口参数;mInputMethodWindow表示第二输入法的窗口参数;!=表示否定意思(例如,不等于、不相同等);null表示不存在;mFrozenState表示标记位。
具体的,将标记位设为第二状态的条件可以包括:第一输入法的窗口参数、第二输入法的窗口参数均存在,且第一输入法的窗口参数与第二输入法的窗口参数相同。
示例性的,以布尔值为假(false)表示第二状态为例,将标记位设为第二状态可以通过以下代码实现。
具体的,确定输入法是否处于从第一输入法切换到第二输入法的时间段,即开始隐藏第一输入法至显示第二输入法之前的时间段的条件可以包括:第一输入法的窗口参数、第二输入法的窗口参数均存在。
示例性的,可以通过以下代码来实现禁止改变嵌入窗口的显隐状态。
具体的,确定输入法是否处于从第一输入法切换到第二输入法的时间段的条件还可以包括:第一输入法的窗口参数与第二输入法的窗口参数不同,且第一输入法或第二输入法的窗口的可见性为显示状态。结合第一输入法的窗口参数、第二输入法的窗口参数、第一输入法的窗口的可见性,以及第二输入法的窗口的可见性,能够更加精准地确定输入法是否处于从第一输入法切换到第二输入法的时间段。
示例性的,还可以通过以下代码来实现禁止改变嵌入窗口的显隐状态。
其中,mInputMethodWindow.isVisibleNow()||win.isVisible()表示第二输入法的窗口的可见性为显示状态,或第一输入法的窗口的可见性为显示状态。
本申请实施例提供的输入法切换方法,第一输入法和第二输入法均是通过嵌入窗口进行管理的,且只有当嵌入窗口的显隐状态为显示状态时,第一输入法或第二输入法才会显示在显示界面上。通过在开始隐藏第一输入法至显示第二输入法之前的时间段内,使嵌入窗口的显隐状态不随第一输入法的隐藏,以及第二输入法即将显示而改变,仍与第一输入法隐藏前嵌入窗口的显隐状态一致,即显示状态。这样可以保证在切换第一输入法和第二输入法的过程中,嵌入窗口的显隐状态一直保持为显示状态,使得切换后的输入法能够及时地显示在显示界面上。
如图8所示,本申请实施例还提供一种芯片系统。该芯片系统80包括至少一个处理器801和至少一个接口电路802。至少一个处理器801和至少一个接口电路802可通过线路互联。处理器801用于支持电子设备实现上述方法实施例中的各个步骤,例如图7所示的方法,至少一个接口电路802可用于从其它装置(例如存储器)接收信号,或者,向其它装置(例如通信接口)发送信号。该芯片系统可以包括芯片,还可以包括其他分立器件。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括指令,当指令在上述电子设备上运行时,使得该电子设备执行上述方法实施例中的各个步骤,例如执行图7所示的方法。
本申请实施例还提供一种包括指令的计算机程序产品,当指令在上述电子设备上运行时,使得该电子设备执行上述方法实施例中的各个步骤,例如执行图7所示的方法。
关于芯片系统、计算机可读存储介质、计算机程序产品的技术效果参照前面方法实施例的技术效果。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个设备,或者也可以分布到多个设备上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个设备中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个设备中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (8)
1.一种输入法切换方法,其特征在于,包括:
显示第一输入法;
响应于用户切换输入法的操作,隐藏所述第一输入法后显示第二输入法;
其中,所述第一输入法和所述第二输入法通过嵌入窗口进行管理,在隐藏所述第一输入法前,所述嵌入窗口的显隐状态为显示状态,从开始隐藏所述第一输入法至显示所述第二输入法之前的时间段,所述嵌入窗口的显隐状态禁止改变。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在隐藏所述第一输入法时,将标记位设为第一状态,所述第一状态用于指示禁止改变所述嵌入窗口的显隐状态;
在显示所述第二输入法后,将所述标记位设为第二状态,所述第二状态用于指示允许改变所述嵌入窗口的显隐状态;
在隐藏所述第一输入法后和显示所述第二输入法之前,如果要改变所述嵌入窗口的显隐状态,则查询所述标记位的状态。
3.根据权利要求2所述的方法,其特征在于,所述将标记位设为第一状态,包括:
如果所述第一输入法的窗口参数、所述第二输入法的窗口参数均存在,且所述第一输入法的窗口参数与所述第二输入法的窗口参数不同,则将所述标记位设为所述第一状态。
4.根据权利要求2或3所述的方法,其特征在于,所述将所述标记位设为第二状态,包括:
如果所述第一输入法的窗口参数、所述第二输入法的窗口参数均存在,且所述第一输入法的窗口参数与所述第二输入法的窗口参数相同,则将所述标记位设为所述第二状态。
5.根据权利要求1-3任一项所述的方法,其特征在于,确认所述时间段的条件包括:所述第一输入法的窗口参数、所述第二输入法的窗口参数均存在。
6.根据权利要求5所述的方法,其特征在于,确认所述时间段的条件还包括:所述第一输入法的窗口参数与所述第二输入法的窗口参数不同,且所述第一输入法或所述第二输入法的窗口的可见性为显示状态。
7.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储指令,当所述处理器执行所述指令时,如权利要求1-6任一项所述的方法被执行。
8.一种计算机可读存储介质,其特征在于,包括指令,当所述指令在电子设备上执行时,使得所述电子设备执行如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211328558.3A CN115826771B (zh) | 2022-10-26 | 2022-10-26 | 一种输入法切换方法和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211328558.3A CN115826771B (zh) | 2022-10-26 | 2022-10-26 | 一种输入法切换方法和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115826771A CN115826771A (zh) | 2023-03-21 |
CN115826771B true CN115826771B (zh) | 2023-08-22 |
Family
ID=85525611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211328558.3A Active CN115826771B (zh) | 2022-10-26 | 2022-10-26 | 一种输入法切换方法和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115826771B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883174A (zh) * | 2009-12-31 | 2010-11-10 | 联想(北京)有限公司 | 一种终端键盘的切换方法及移动终端 |
CN102594992A (zh) * | 2009-12-31 | 2012-07-18 | 联想(北京)有限公司 | 一种终端键盘的切换方法及移动终端 |
CN103207739A (zh) * | 2012-01-13 | 2013-07-17 | 北京搜狗科技发展有限公司 | 一种智能切出输入法的方法和装置 |
WO2020107463A1 (zh) * | 2018-11-30 | 2020-06-04 | 华为技术有限公司 | 一种电子设备的控制方法及电子设备 |
CN114416232A (zh) * | 2021-12-24 | 2022-04-29 | 深信服科技股份有限公司 | 远程应用使用本地输入法的方法、装置、设备和存储介质 |
-
2022
- 2022-10-26 CN CN202211328558.3A patent/CN115826771B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883174A (zh) * | 2009-12-31 | 2010-11-10 | 联想(北京)有限公司 | 一种终端键盘的切换方法及移动终端 |
CN102594992A (zh) * | 2009-12-31 | 2012-07-18 | 联想(北京)有限公司 | 一种终端键盘的切换方法及移动终端 |
CN103207739A (zh) * | 2012-01-13 | 2013-07-17 | 北京搜狗科技发展有限公司 | 一种智能切出输入法的方法和装置 |
WO2020107463A1 (zh) * | 2018-11-30 | 2020-06-04 | 华为技术有限公司 | 一种电子设备的控制方法及电子设备 |
CN114416232A (zh) * | 2021-12-24 | 2022-04-29 | 深信服科技股份有限公司 | 远程应用使用本地输入法的方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115826771A (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106060378B (zh) | 用于设置拍摄模块的装置和方法 | |
CN110543289B (zh) | 控制音量的方法和电子设备 | |
EP3454240B1 (en) | Unlocking methods and related products | |
KR20150082940A (ko) | 화면의 회전을 컨트롤할 수 있는 전자 장치 및 방법 | |
CN111212412B (zh) | 近场通信方法及装置、计算机可读存储介质和电子设备 | |
CN112506386A (zh) | 一种折叠屏显示方法及电子设备 | |
KR20150065410A (ko) | 전자 장치의 억세스 포인트 접속 방법 및 그 전자 장치 | |
CN110677713B (zh) | 视频图像处理方法及装置、存储介质 | |
US10237087B2 (en) | Method for controlling transmission speed and electronic device thereof | |
CN108896865B (zh) | 汽车的保险丝确定方法、装置及存储介质 | |
KR20150068136A (ko) | 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치 | |
KR20160004712A (ko) | 비인가 주파수 대역에서 무선 통신하는 방법 및 이를 구현하는 전자장치 | |
CN116418092B (zh) | 充电控制电路、充电控制方法和电子设备 | |
CN116054870B (zh) | 无线通信电路、蓝牙通信切换方法和电子设备 | |
US11599321B2 (en) | Electronic device and operating method therefor | |
CN115826771B (zh) | 一种输入法切换方法和电子设备 | |
KR20150057416A (ko) | 이벤트를 처리하기 위한 전자 장치 및 방법 | |
CN116048678B (zh) | 单词截断检测方法、装置和系统 | |
CN116744226B (zh) | 电子围栏数据采集方法和电子设备 | |
CN116048351A (zh) | 截屏方法和电子设备 | |
CN116361865B (zh) | 一种访问方法和电子设备 | |
KR102163715B1 (ko) | 전자 장치의 동작을 제어하기 위한 방법 및 장치 | |
CN115988002B (zh) | 一种数据传输方法和电子设备 | |
CN116048312A (zh) | 导航点过渡动画显示方法和电子设备 | |
CN116737356A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |