CN106843645A - 一种确定视图显示位置的方法及设备 - Google Patents

一种确定视图显示位置的方法及设备 Download PDF

Info

Publication number
CN106843645A
CN106843645A CN201710007859.9A CN201710007859A CN106843645A CN 106843645 A CN106843645 A CN 106843645A CN 201710007859 A CN201710007859 A CN 201710007859A CN 106843645 A CN106843645 A CN 106843645A
Authority
CN
China
Prior art keywords
view
character
target view
input
target
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.)
Granted
Application number
CN201710007859.9A
Other languages
English (en)
Other versions
CN106843645B (zh
Inventor
李双增
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Hisense Media Network Technology Co Ltd
Original Assignee
Qingdao Hisense Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qingdao Hisense Electronics Co Ltd filed Critical Qingdao Hisense Electronics Co Ltd
Priority to CN201710007859.9A priority Critical patent/CN106843645B/zh
Publication of CN106843645A publication Critical patent/CN106843645A/zh
Application granted granted Critical
Publication of CN106843645B publication Critical patent/CN106843645B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction 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/0488Interaction 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
    • G06F3/04886Interaction 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 by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Abstract

本发明涉及计算机技术领域,特别涉及一种确定视图显示位置的方法及设备。用以解决现有技术中确定输入框位置的方法在确定出错误的显示位置时不能自动识别,确定输入框位置的方法不够灵活问题。本发明实施例若确定目标视图位于可见区域之外,并且目标视图中已输入的字符个数大于目标视图能够显示的最大字符数,则根据已输入的字符和所述参考视图的位置,确定目标视图的当前位置;根据目标视图的当前位置与可见区域的位置,确定目标视图的显示位置。由于本发明实施例在确定目标视图的显示位置出现错误时,能够自动识别到出现错误,并且重新确定出正确的目标视图的显示位置,从而不需要人工干预,能够灵活的确定出目标视图正确的显示位置。

Description

一种确定视图显示位置的方法及设备
技术领域
本发明涉及计算机技术领域,特别涉及一种确定视图显示位置的方法及设备。
背景技术
目前随着Android(安卓)操作系统的普及,使用Android操作系统的产品已经深入到了我们生活的方方面面,如Android手机、Android电视、Android平板电脑等。用户使用输入法输入字符到Android设备屏幕显示的场景更是司空见惯。如图1为一个普通的输入框;图2中,用户点击输入框输入字符,弹出输入法键盘,这时输入框所在的界面,由于输入法键盘的弹出,会重新计算输入框应该显示在屏幕的位置。
现有技术在重新计算输入框显示在屏幕的位置时,如果用户在输入框中输入的字符数大于该输入框能够显示的最大字符数时,若由于种种原因导致输入法键盘隐藏,例如操作中断、用户按了返回键;当用户再度点击输入框调出输入法键盘时,在重新计算输入框位置时,可能会出现计算出错,出现如图3所示的现象,输入框被输入法键盘遮挡;在接下来的输入字符的过程中,用户将无法看到自己输入的字符。并且唯一的解决办法是退出当前界面重新进入该界面,用户需要重新输入字符。在计算输入框位置出现错误后,设备不能自动识别并重新确定正确的输入框位置,需要用户手动退出错误界面。
综上所示,目前确定输入框位置的方法在确定出错误的显示位置时不能自动识别,确定输入框位置的方法不够灵活。
发明内容
本发明提供一种确定视图显示位置的方法及设备,用以解决现有技术中确定输入框位置的方法在确定出错误的显示位置时不能自动识别,确定输入框位置的方法不够灵活的问题。
基于上述问题,本发明实施例提供一种确定视图显示位置的方法,包括:
若确定目标视图位于可见区域之外,并且所述目标视图中已输入的字符个数大于所述目标视图能够显示的最大字符数,则根据已输入的字符和所述参考视图的位置,确定目标视图的当前位置,其中所述参考视图的位置是根据已输入的字符确定的,且所述参考视图的面积大于所述目标视图的面积;
根据所述目标视图的当前位置与所述可见区域的位置,确定所述目标视图的显示位置。
另一方面,本发明实施例提供一种确定视图显示位置的设备,包括:
确定模块,用于若确定目标视图位于可见区域之外,并且所述目标视图中已输入的字符个数大于所述目标视图能够显示的最大字符数,则根据已输入的字符和所述参考视图的位置,确定目标视图的当前位置,其中所述参考视图的位置是根据已输入的字符确定的,且所述参考视图的面积大于所述目标视图的面积;
处理模块,用于根据所述目标视图的当前位置与所述可见区域的位置,确定所述目标视图的显示位置。
由于本发明实施例在确定目标视图位于可见区域之外,并且所述目标视图中已输入的字符个数大于所述目标视图能够显示的最大字符数时,重新确定目标视图的当前位置;并且本发明实施例在确定目标视图的当前位置时,是根据由已输入的字符确定的参考视图,确定出目标视图的当前位置的。并根据当前视图的当前位置,以及可见区域的位置,对目标视图进行平移,确定目标视图的显示位置。由于本发明实施例在确定目标视图的显示位置出现错误时,能够自动识别到出现错误,并且重新确定出正确的目标视图的显示位置,从而不需要人工干预,能够灵活的确定出目标视图正确的显示位置,提高用户体验。
附图说明
图1为背景技术中的输入框示意图;
图2为背景技术中的输入框和输入法键盘示意图一;
图3为背景技术中输入框和输入法键盘示意图二;
图4为本发明实施例确定视图显示位置的方法流程图;
图5为本发明实施例输入框位置示意图;
图6为本发明实施例输入的字符示意图;
图7A为本发明实施已输入字符的输入方式示意图一;
图7B为本发明实施已输入字符的输入方式示意图二;
图7C为本发明实施已输入字符的输入方式示意图三;
图7D为本发明实施已输入字符的输入方式示意图四;
图8为本发明实施例确定视图显示位置的方法整体流程图;
图9为本发明实施例确定视图显示位置的设备的结构示意图。
具体实施方式
本发明实施例若确定目标视图位于可见区域之外,并且所述目标视图中已输入的字符个数大于所述目标视图能够显示的最大字符数,则根据已输入的字符和所述参考视图的位置,确定目标视图的当前位置,其中所述参考视图的位置是根据已输入的字符确定的,且所述参考视图的面积大于所述目标视图的面积;根据所述目标视图的当前位置与所述可见区域的位置,确定所述目标视图的显示位置。
由于本发明实施例在确定目标视图位于可见区域之外,并且所述目标视图中已输入的字符个数大于所述目标视图能够显示的最大字符数时,重新确定目标视图的当前位置;并且本发明实施例在确定目标视图的当前位置时,是根据由已输入的字符确定的参考视图,确定出目标视图的当前位置的。并根据当前视图的当前位置,以及可见区域的位置,对目标视图进行平移,确定目标视图的显示位置。由于本发明实施例在确定目标视图的显示位置出现错误时,能够自动识别到出现错误,并且重新确定出正确的目标视图的显示位置,从而不需要人工干预,能够灵活的确定出目标视图正确的显示位置,提高用户体验。
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如图4所示,本发明实施例一种确定视图显示位置的方法包括:
步骤401、若确定目标视图位于可见区域之外,并且所述目标视图中已输入的字符个数大于所述目标视图能够显示的最大字符数,则根据已输入的字符和所述参考视图的位置,确定目标视图的当前位置,其中所述参考视图的位置是根据已输入的字符确定的,且所述参考视图的面积大于所述目标视图的面积;
步骤402、根据所述目标视图的当前位置与所述可见区域的位置,确定所述目标视图的显示位置。
本发明实施例的目标视图为文本视图,用户能够通过点击目标视图,在目标视图中进行字符的输入;并且在用户点击目标视图,在目标视图中输入字符时,会在屏幕上弹出输入法键盘,以使用户通过输入法键盘,在目标视图中输入字符。
本发明实施例的可见区域为屏幕中除了输入法键盘之外的区域。
例如,本发明实施例的目标视图可以为输入框。
其中,本发明实施例确定目标视图位于可见区域之外,为目标视图全部位于可见区域之外,即:在输入法键盘弹出后,目标视图全部位于输入法键盘覆盖的区域。
本发明实施例根据目标视图的长度,以及目标视图中每个字符的宽度,确定目标视图中能够显示的最大字符数。
具体的,根据字符占用像素的个数确定每个字符的宽度;以及根据目标视图占用的像素的个数确定目标视图的宽度。
结合本发明实施例确定目标视图显示位置的方法的应用场景,进行详细说明。
本发明实施例在采用上述方法确定目标视图的显示位置之前,已经确定过一次目标视图的显示位置,但是,第一次确定出的目标视图的显示位置位于可见区域之外。
可以理解为:本发明实施例包括两个模块,假设分别为绘制模块和纠错模块。其中,绘制模块主要执行确定目标视图显示位置的任务;纠错模块主要用于判断绘制模块确定出的目标视图的显示位置是否正确,在确定绘制模块确定出的目标视图的显示位置错误时,纠错模块采用上述方法重新确定出正确的目标视图的显示位置。
本发明实施例确定目标视图显示位置的方法的应用场景为,用户通过输入法键盘在目标视图中输入字符,在用户输入的字符个数大于该目标视图能够显示的最大字符数时,假设由于用户按了返回键,导致输入法键盘隐藏。由于用户还需要继续输入字符,需要调出输入法键盘;在用户调出输入法键盘时,上述绘制模块需要重新确定目标视图的显示位置。
本发明实施例的绘制模块在确定目标视图的显示位置时,获取目标视图的rectangle(矩形)参数。
具体的,以目标视图为输入框为例,说明绘制模块获取输入框rectangle参数的方法。
绘制模块在确定输入框显示位置之前,会遍历显示系统中全部的View(视图)并调用每个View的onLayout方法用于更新View的布局,计算坐标和偏移等。由于输入框(EditText)继承自TextView,在调用EditText的onLayout方法时,会调用到TextView的onLayout方法,在TextView的onLayout方法中,会调用到bringPointIntoView等一系列方法,最终会调用到ViewRootImpl中的scrollToRectOrFocus方法,该方法定义如下:
boolean scrollToRectOrFocus(Rect rectangle,boolean immediate)
其中,rectangle参数的类型为Rect(矩形),Rect的相关重要数据如下:
rectangle参数包括left(左)、right(右)、top(上)、bottom(下),规定了Rect的大小,也确定了该Rect相对于屏幕的位置。
如图5所示的输入框,在屏幕分辨率为1920*1080时,rectangle参数表示输入框相对屏幕的位置。
由于用户在目标视图中输入的字符的个数大于目标视图能够显示的最大字符数,该绘制模块在获取目标视图的rectangle参数时,会获取到错误的rectangle参数;将绘制模块获取到的错误的rectangle参数对应的视图作为参考视图;即绘制模块根据参考视图的rectangle参数与可见区域的mVisRect参数,确定目标区域的显示位置,导致目标区域的显示位置确定错误。
需要说明的是,本发明实施例的参考视图的位置是根据已输入的字符确定的,且所述参考视图的面积大于所述目标视图的面积。
如图6所示,假设目标区域中能够显示的最大字符数为5,此时用户已输入的字符数为8,用户已输入的字符为1、2、3、4、5、6、7、8。而字符4、5、6、7、8所在的区域为目标视图的位置。绘制模块在获取目标视图的rectangle参数时,错误地将字符1、2、3、4、5、6、7、8所在的区域作为目标视图的位置;即本发明实施例将字符1、2、3、4、5、6、7、8所在的区域作为参考视图所在的位置。
具体的,本发明实施例在确定目标区域位于可见区域之外时,可以采用下列方法。
1、获取参考视图的rectangle参数,以及获取可见区域的mVisRect参数;
其中,rectangle参数包括left、right、top、bottom;
mVisRect参数也包括left、right、top、bottom。
2、采用intersect方法,判断参考视图的rectangle参数与可见区域的mVisRect参数是否存在交集。
由于参考视图为文本视图,参考视图的rectangle参数与可见区域的mVisRect参数本应该存在交集;
若通过intersect方法,确定参考视图的rectangle参数与可见区域的mVisRect参数没有交集,则确定目标区域位于可见区域之外。
需要说明的是,本发明实施例若通过intersect方法,确定参考视图的rectangle参数与可见区域的mVisRect参数有交集,则需要根据参考视图的rectangle参数与可见区域的mVisRect参数进行计算,对参考视图进行平移,以使参考视图移动到可见区域。但是,若通过intersect方法,确定参考视图的rectangle参数与可见区域的mVisRect参数没有交集,则不对参考视图进行移动。
具体的,本发明实施例的intersect方法可以采用下列代码实现:
其中,上述代码中的left,top,right,bottom表示可视区域的mVisRect参数,thisleft,this top,this right,this bottom表示参考视图的rectangle参数。
由于本发明实施例在根据参考视图的位置确定目标视图的显示位置时。确定出的目标视图的显示位置位于可见区域之外。因此,本发明实施例在需要确定出目标视图正确的显示位置时,首先需要确定出目标视图的当前位置(即正确的目标视图的位置,并非是参考视图的位置)。
本发明实施例根据已输入的字符和参考视图的位置,确定目标视图的当前位置。
可选的,确定已输入的字符占用的行数;根据所述行数、已输入的字符的个数、所述目标视图能够显示的最大字符数,以及所述参考视图的位置,确定所述目标视图的当前位置。
需要说明的是,由于本发明实施例的目标视图中能够显示的最大字符时确定的,在用户输入的字符个数大于目标视图能够显示的最大字符数时,会将最先输入的多于该最大字符数的字符隐藏。并且在隐藏字符的方式不同时,已输入的字符占用的行数不同。下面根据已输入的字符占用的行数,分别说明确定目标视图的当前位置的方法。
一、已输入的字符占用的行数为一行。
根据下列方式确定所述目标视图的当前位置:
根据已输入的字符的个数与所述目标视图能够显示的最大字符数的差值,以及每个字符的宽度,确定所述目标视图的当前位置与所述参考视图的位置在水平方向上的偏移量;根据所述水平方向上的偏移量,以及所述参考视图的位置,确定所述目标视图的当前位置。
本发明实施例参考视图的位置是根据已输入的所有字符确定的;而目标视图的当前位置为在目标视图中显示的字符所在的区域。并且在已输入的字符占用的行数为一行时,表示隐藏字符的方式为将多出的字符在目标视图的左右隐藏。
在已输入的字符占用的行数为一行时,目标视图的当前位置相对于参考视图的位置在垂直方向上没有变化,目标视图的当前位置相对于参考视图的位置只存在水平方向的偏移。
在确定水平方向上的偏移量时,将已输入的字符的个数与所述目标视图能够显示的最大字符数的差值,与每个字符宽度的乘积,作为目标视图的当前位置与参考视图的位置在水平方向上的偏移量。
根据用户在目标视图中输入字符后,字符显示顺序不同,目标视图的位置相对于参考视图的位置的水平方向的偏移方向也不同。
1、若所述已输入的字符中第一个字符位于所有字符的最左侧,则将所述参考视图的左侧边界向右平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置。
在已输入的字符中第一个字符位于所有字符的最左侧时,表示输入的字符从左至右依次显示;在输入的字符数大于目标视图能够显示的最大字符数时,将最先输入的字符隐藏,即将靠近左侧的字符进行隐藏。
具体的,如图7A所示的已输入字符。假设目标视图能够显示的最大字符数为5,已输入的字符数为8;用户在目标视图输入的字符依次为1、2、3、4、5、6、7、8;则当前在目标视图中显示的字符从左至右依次为4、5、6、7、8;字符1、2、3隐藏。
在确定目标视图的当前位置时,参考视图的位置为字符1、2、3、4、5、6、7、8所在的位置。确定已输入的字符的个数与所述目标视图能够显示的最大字符数的差值为3,并且每个字符的宽度为a,则确定目标视图的当前位置与参考视图的位置在水平方向上的偏移量3a。将参考视图的左侧边界向右平移偏移量3a,得到目标视图的当前位置。
2、若所述已输入的字符中第一个字符位于所有字符的最右侧,则将所述参考视图的右侧边界向左平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置。
在已输入的字符中第一个字符位于所有字符的最右侧时,表示输入的字符从右至左依次显示;在输入的字符数大于目标视图能够显示的最大字符数时,将最先输入的字符隐藏,即将靠近右侧的字符进行隐藏。
具体的,如图7B所示的已输入字符。假设目标视图能够显示的最大字符数为5,已输入的字符数为8;用户在目标视图输入的字符依次为1、2、3、4、5、6、7、8;则当前在目标视图中显示的字符从右至左依次为4、5、6、7、8;字符1、2、3隐藏。
在确定目标视图的当前位置时,参考视图的位置为字符1、2、3、4、5、6、7、8所在的位置。确定已输入的字符的个数与所述目标视图能够显示的最大字符数的差值为3,并且每个字符的宽度为a,则确定目标视图的当前位置与参考视图的位置在水平方向上的偏移量3a。将参考视图的右侧边界向左平移偏移量3a,得到目标视图的当前位置。
二、已输入的字符占用的行数多于一行。
根据下列方式确定所述目标视图的当前位置:
根据所述行数,以及每个字符的高度,确定所述目标视图的当前位置与所述参考视图的位置在垂直方向上的偏移量;根据所述垂直方向上的偏移量,以及所述参考视图的位置,确定所述目标视图的当前位置。
本发明实施例参考视图的位置是根据已输入的所有字符确定的;而目标视图的当前位置为在目标视图中显示的字符所在的区域。并且在已输入的字符占用的行数多于一行时,表示隐藏字符的方式为将多出的字符在目标视图的上下行进行隐藏。
在已输入的字符占用的行数多于一行时,目标视图的当前位置相对于参考视图的位置在水平方向上没有变化,目标视图的当前位置相对于参考视图的位置只存在垂直方向的偏移。
在确定垂直方向上的偏移量时,获取输入的字符占用的行数,将该行数减1的值,与每个字符的高度的乘积,作为目标视图的当前位置与参考视图的位置在垂直方向上的偏移量。
用户在目标视图中输入的字符数大于目标视图最大显示字符数后,多出的字符在目标视图的上下行进行隐藏。并且多出的字符的隐藏方式不同,目标视图的位置相对于参考视图的位置的垂直方向的偏移方向也不同。
具体的,本发明实施例在判断多出的字符的隐藏方式时,是根据已输入的字符中第一个字符的位置确定的。在已输入的字符中第一个字符位于从上到下顺序的第一行时,表示将多出的字符在目标视图的上一行进行隐藏;在已输入的字符中第一个字符位于从下到上顺序的第一行时,表示将多出的字符在目标视图的下一行进行隐藏。
1、若所述已输入的字符中第一个字符位于从上到下顺序的第一行,则将所述参考视图的上方边界向下平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置;
在已输入的字符中第一个字符位于从上到下顺序的第一行时,表示将多出的字符在目标视图的上一行进行隐藏。并且在输入的字符数大于目标视图能够显示的最大字符数时,将最先输入的字符在目标视图的上一行进行隐藏。
具体的,如图7C所示的已输入字符。假设目标视图能够显示的最大字符数为5,已输入的字符数为8;用户在目标视图输入的字符依次为1、2、3、4、5、6、7、8;则当前在目标视图中显示的字符从右至左依次为4、5、6、7、8;字符1、2、3在目标视图的上方隐藏。
在确定目标视图的当前位置时,参考视图的位置为长度为字符4、5、6、7、8所在区域的长度,高度为两行字符的高度。确定已输入的字符所占的行数位两行,并且每个字符的高度为b,则则确定目标视图的当前位置与参考视图的位置在垂直方向上的偏移量b。将参考视图的上方边界向下平移偏移量b,得到目标视图的当前位置。
2、若所述已输入的字符中第一个字符位于从下到上顺序的第一行,则将所述参考视图的下方边界向上平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置。
在已输入的字符中第一个字符位于从下到上顺序的第一行时,表示将多出的字符在目标视图的下一行进行隐藏。并且在输入的字符数大于目标视图能够显示的最大字符数时,将最先输入的字符在目标视图的下一行进行隐藏。
具体的,如图7D所示的已输入字符。假设目标视图能够显示的最大字符数为5,已输入的字符数为8;用户在目标视图输入的字符依次为1、2、3、4、5、6、7、8;则当前在目标视图中显示的字符从右至左依次为4、5、6、7、8;字符1、2、3在目标视图的下方隐藏。
在确定目标视图的当前位置时,参考视图的位置为长度为字符4、5、6、7、8所在区域的长度,高度为两行字符的高度。确定已输入的字符所占的行数位两行,并且每个字符的高度为b,则则确定目标视图的当前位置与参考视图的位置在垂直方向上的偏移量b。将参考视图的下方边界向上平移偏移量b,得到目标视图的当前位置。
本发明实施例在确定目标视图的当前位置时。具体可以采用下列代码实现:
本发明实施例在确定出目标视图的当前位置后,根据目标视图的当前位置与可见区域的位置,确定所述目标视图的显示位置。
其中,目标视图的显示位置完全位于可见区域之中。
需要说明的是,本发明实施例根据目标视图的当前位置与可见区域的位置,确定所述目标视图的显示位置的方法,采用的是现有技术的方法,在此不再详细赘述。
下面以已输入的字符占用的行数为一行,并且已输入的字符中第一个字符位于所有字符的最左侧为例,说明本发明实施例确定视图显示位置的方法整体流程。
如图8所示,本发明实施例确定视图显示位置的方法包括:
步骤801、判断目标视图是否位于可见区域;若是,执行步骤802,若否,执行步骤803;
步骤802、判断目标视图中已输入的字符个数是否大于所述目标视图能够显示的最大字符数;若是,执行步骤804,若否,执行步骤803;
步骤803、流程结束;
步骤804、根据已输入的字符的个数与所述目标视图能够显示的最大字符数的差值,以及每个字符的宽度,确定所述目标视图的当前位置与所述参考视图的位置在水平方向上的偏移量;
步骤805、将参考视图的左侧边界向右平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置;
步骤806、根据所述目标视图的当前位置与所述可见区域的位置,确定所述目标视图的显示位置。
基于同一发明构思,本发明实施例中还提供了一种确定视图显示位置的设备,由于该设备解决问题的原理与本发明实施例确定视图显示位置的方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。
如图9所示,本发明实施例确定视图显示位置的设备,包括:
确定模块901,用于若确定目标视图位于可见区域之外,并且所述目标视图中已输入的字符个数大于所述目标视图能够显示的最大字符数,则根据已输入的字符和所述参考视图的位置,确定目标视图的当前位置,其中所述参考视图的位置是根据已输入的字符确定的,且所述参考视图的面积大于所述目标视图的面积;
处理模块902,用于根据所述目标视图的当前位置与所述可见区域的位置,确定所述目标视图的显示位置。
可选的,所述确定模块901,具体用于:
确定已输入的字符占用的行数;根据所述行数、已输入的字符的个数、所述目标视图能够显示的最大字符数,以及所述参考视图的位置,确定所述目标视图的当前位置。
可选的,所述确定模块901,具体用于:
若所述行数为一行,则根据下列方式确定所述目标视图的当前位置:
根据已输入的字符的个数与所述目标视图能够显示的最大字符数的差值,以及每个字符的宽度,确定所述目标视图的当前位置与所述参考视图的位置在水平方向上的偏移量;根据所述水平方向上的偏移量,以及所述参考视图的位置,确定所述目标视图的当前位置。
可选的,所述确定模块901,具体用于::
若所述已输入的字符中第一个字符位于所有字符的最左侧,则将所述参考视图的左侧边界向右平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置;或
若所述已输入的字符中第一个字符位于所有字符的最右侧,则将所述参考视图的右侧边界向左平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置。
可选的,所述确定模块901,具体用于:
若所述行数多于一行,则根据下列方式确定所述目标视图的当前位置:
根据所述行数,以及每个字符的高度,确定所述目标视图的当前位置与所述参考视图的位置在垂直方向上的偏移量;根据所述垂直方向上的偏移量,以及所述参考视图的位置,确定所述目标视图的当前位置。
可选的,所述确定模块901,具体用于:
若所述已输入的字符中第一个字符位于从上到下顺序的第一行,则将所述参考视图的上方边界向下平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置;或
若所述已输入的字符中第一个字符位于从下到上顺序的第一行,则将所述参考视图的下方边界向上平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置。
以上参照示出根据本申请实施例的方法、装置(系统)和/或计算机程序产品的框图和/或流程图描述本申请。应理解,可以通过计算机程序指令来实现框图和/或流程图示图的一个块以及框图和/或流程图示图的块的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机的处理器和/或其它可编程数据处理装置,以产生机器,使得经由计算机处理器和/或其它可编程数据处理装置执行的指令创建用于实现框图和/或流程图块中所指定的功能/动作的方法。
相应地,还可以用硬件和/或软件(包括固件、驻留软件、微码等)来实施本申请。更进一步地,本申请可以采取计算机可使用或计算机可读存储介质上的计算机程序产品的形式,其具有在介质中实现的计算机可使用或计算机可读程序代码,以由指令执行系统来使用或结合指令执行系统而使用。在本申请上下文中,计算机可使用或计算机可读介质可以是任意介质,其可以包含、存储、通信、传输、或传送程序,以由指令执行系统、装置或设备使用,或结合指令执行系统、装置或设备使用。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (12)

1.一种确定视图显示位置的方法,其特征在于,该方法包括:
若确定目标视图位于可见区域之外,并且所述目标视图中已输入的字符个数大于所述目标视图能够显示的最大字符数,则根据已输入的字符和所述参考视图的位置,确定目标视图的当前位置,其中所述参考视图的位置是根据已输入的字符确定的,且所述参考视图的面积大于所述目标视图的面积;
根据所述目标视图的当前位置与所述可见区域的位置,确定所述目标视图的显示位置。
2.如权利要求1所述的方法,其特征在于,所述根据已输入的字符和所述参考视图的位置,确定目标视图的当前位置,包括:
确定已输入的字符占用的行数;
根据所述行数、已输入的字符的个数、所述目标视图能够显示的最大字符数,以及所述参考视图的位置,确定所述目标视图的当前位置。
3.如权利要求2所述的方法,其特征在于,若所述行数为一行,则根据下列方式确定所述目标视图的当前位置:
根据已输入的字符的个数与所述目标视图能够显示的最大字符数的差值,以及每个字符的宽度,确定所述目标视图的当前位置与所述参考视图的位置在水平方向上的偏移量;
根据所述水平方向上的偏移量,以及所述参考视图的位置,确定所述目标视图的当前位置。
4.如权利要求3所述的方法,其特征在于,所述根据所述水平方向上的偏移量,以及所述参考视图的位置,确定所述目标视图的当前位置,包括:
若所述已输入的字符中第一个字符位于所有字符的最左侧,则将所述参考视图的左侧边界向右平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置;或
若所述已输入的字符中第一个字符位于所有字符的最右侧,则将所述参考视图的右侧边界向左平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置。
5.如权利要求2所述的方法,其特征在于,若所述行数多于一行,则根据下列方式确定所述目标视图的当前位置:
根据所述行数,以及每个字符的高度,确定所述目标视图的当前位置与所述参考视图的位置在垂直方向上的偏移量;
根据所述垂直方向上的偏移量,以及所述参考视图的位置,确定所述目标视图的当前位置。
6.如权利要求5所述的方法,其特征在于,所述根据所述垂直方向上的偏移量,以及所述参考视图的位置,确定所述目标视图的当前位置,包括:
若所述已输入的字符中第一个字符位于从上到下顺序的第一行,则将所述参考视图的上方边界向下平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置;或
若所述已输入的字符中第一个字符位于从下到上顺序的第一行,则将所述参考视图的下方边界向上平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置。
7.一种确定视图显示位置的设备,其特征在于,包括:
确定模块,用于若确定目标视图位于可见区域之外,并且所述目标视图中已输入的字符个数大于所述目标视图能够显示的最大字符数,则根据已输入的字符和所述参考视图的位置,确定目标视图的当前位置,其中所述参考视图的位置是根据已输入的字符确定的,且所述参考视图的面积大于所述目标视图的面积;
处理模块,用于根据所述目标视图的当前位置与所述可见区域的位置,确定所述目标视图的显示位置。
8.如权利要求7所述的设备,其特征在于,所述确定模块,具体用于:
确定已输入的字符占用的行数;根据所述行数、已输入的字符的个数、所述目标视图能够显示的最大字符数,以及所述参考视图的位置,确定所述目标视图的当前位置。
9.如权利要求8所述的设备,其特征在于,所述确定模块,具体用于:
若所述行数为一行,则根据下列方式确定所述目标视图的当前位置:
根据已输入的字符的个数与所述目标视图能够显示的最大字符数的差值,以及每个字符的宽度,确定所述目标视图的当前位置与所述参考视图的位置在水平方向上的偏移量;根据所述水平方向上的偏移量,以及所述参考视图的位置,确定所述目标视图的当前位置。
10.如权利要求9所述的设备,其特征在于,所述确定模块,具体用于::
若所述已输入的字符中第一个字符位于所有字符的最左侧,则将所述参考视图的左侧边界向右平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置;或
若所述已输入的字符中第一个字符位于所有字符的最右侧,则将所述参考视图的右侧边界向左平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置。
11.如权利要求8所述的设备,其特征在于,所述确定模块,具体用于:
若所述行数多于一行,则根据下列方式确定所述目标视图的当前位置:
根据所述行数,以及每个字符的高度,确定所述目标视图的当前位置与所述参考视图的位置在垂直方向上的偏移量;根据所述垂直方向上的偏移量,以及所述参考视图的位置,确定所述目标视图的当前位置。
12.如权利要求11所述的设备,其特征在于,所述确定模块,具体用于:
若所述已输入的字符中第一个字符位于从上到下顺序的第一行,则将所述参考视图的上方边界向下平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置;或
若所述已输入的字符中第一个字符位于从下到上顺序的第一行,则将所述参考视图的下方边界向上平移所述偏移量,将平移后的参考视图的位置作为所述目标视图的当前位置。
CN201710007859.9A 2017-01-05 2017-01-05 一种确定视图显示位置的方法及设备 Active CN106843645B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710007859.9A CN106843645B (zh) 2017-01-05 2017-01-05 一种确定视图显示位置的方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710007859.9A CN106843645B (zh) 2017-01-05 2017-01-05 一种确定视图显示位置的方法及设备

Publications (2)

Publication Number Publication Date
CN106843645A true CN106843645A (zh) 2017-06-13
CN106843645B CN106843645B (zh) 2019-09-17

Family

ID=59117848

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710007859.9A Active CN106843645B (zh) 2017-01-05 2017-01-05 一种确定视图显示位置的方法及设备

Country Status (1)

Country Link
CN (1) CN106843645B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116740235A (zh) * 2023-08-14 2023-09-12 福昕鲲鹏(北京)信息科技有限公司 基于版式文档的文本注释渲染方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7036086B2 (en) * 2001-01-04 2006-04-25 Intel Corporation Displaying software keyboard images
CN101263443A (zh) * 2005-09-16 2008-09-10 苹果公司 触摸屏用户界面上的虚拟输入设备布置
CN102880304A (zh) * 2012-09-06 2013-01-16 天津大学 用于便携设备的字符输入方法及装置
CN102981699A (zh) * 2011-11-01 2013-03-20 微软公司 调整内容以避免被虚拟输入面板遮挡
CN104951186A (zh) * 2015-06-12 2015-09-30 联想(北京)有限公司 一种信息处理方法及电子设备
CN106126031A (zh) * 2016-06-28 2016-11-16 青岛海信移动通信技术股份有限公司 一种文字输入的方法及终端

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7036086B2 (en) * 2001-01-04 2006-04-25 Intel Corporation Displaying software keyboard images
CN101263443A (zh) * 2005-09-16 2008-09-10 苹果公司 触摸屏用户界面上的虚拟输入设备布置
CN102981699A (zh) * 2011-11-01 2013-03-20 微软公司 调整内容以避免被虚拟输入面板遮挡
CN102880304A (zh) * 2012-09-06 2013-01-16 天津大学 用于便携设备的字符输入方法及装置
CN104951186A (zh) * 2015-06-12 2015-09-30 联想(北京)有限公司 一种信息处理方法及电子设备
CN106126031A (zh) * 2016-06-28 2016-11-16 青岛海信移动通信技术股份有限公司 一种文字输入的方法及终端

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116740235A (zh) * 2023-08-14 2023-09-12 福昕鲲鹏(北京)信息科技有限公司 基于版式文档的文本注释渲染方法及装置

Also Published As

Publication number Publication date
CN106843645B (zh) 2019-09-17

Similar Documents

Publication Publication Date Title
US10755143B2 (en) Object detection device, object detection method, and recording medium
EP3220249A1 (en) Method, device and terminal for implementing regional screen capture
CN105094617A (zh) 一种截屏方法及装置
US11490164B2 (en) Method and electronic device for displaying video
WO2021088422A1 (zh) 应用消息的通知方法及装置
US11175874B2 (en) Image display method
CN107102786A (zh) 一种信息处理方法及客户端
CN112148168B (zh) 图标的移动方法、装置和电子设备
JP2016006647A (ja) 領域判定装置、領域判定方法およびプログラム
CN112215769A (zh) 一种超声图像处理方法、装置及超声设备和存储介质
CN106713879A (zh) 避障投影方法及其装置
CN106843645A (zh) 一种确定视图显示位置的方法及设备
CN107239222A (zh) 一种触摸屏的操控方法及终端设备
CN112667343B (zh) 一种界面调整方法、装置、设备及存储介质
CN110737417B (zh) 一种演示设备及其标注线的显示控制方法和装置
US20160357395A1 (en) Information processing device, non-transitory computer-readable recording medium storing an information processing program, and information processing method
CN104714739A (zh) 信息处理方法及电子设备
CN113313027A (zh) 图像处理方法、装置、电子设备和存储介质
US20210072884A1 (en) Information processing apparatus and non-transitory computer readable medium
CN107145313A (zh) 图像显示方法及装置
CN113778277A (zh) 应用图标管理方法、装置及电子设备
CN106775270A (zh) 一种屏幕菜单的显示方法及装置
US20150277676A1 (en) Creating an interaction area for listing user-selectable items
CN111949129A (zh) 显示内容更新方法、装置、电子设备及存储介质
US20170336965A1 (en) Interface, character input guide method, and program

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
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 266100 Zhuzhou Road, Laoshan District, Shandong, No. 151, No.

Patentee after: Hisense Video Technology Co.,Ltd.

Address before: 266100 Zhuzhou Road, Laoshan District, Shandong, No. 151, No.

Patentee before: HISENSE ELECTRIC Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211231

Address after: 266100 Songling Road, Laoshan District, Qingdao, Shandong Province, No. 399

Patentee after: QINGDAO HISENSE MEDIA NETWORKS Ltd.

Address before: 266100 No. 151, Zhuzhou Road, Laoshan District, Shandong, Qingdao

Patentee before: Hisense Video Technology Co.,Ltd.