一种在终端中的触控操作方法和装置的制造方法_2

文档序号:8905017阅读:来源:国知局
出窗口,手指触摸点从窗口内滑动到窗口外后抬起,触屏驱动层最后上报的事件类型应该是Act1n_UP (抬起),而窗口管理模块在分发时发现此点已经不在窗口内,可能就会将其事件类型转换为cancel (取消),进而通知应用。
[0069]如上所述,为保证偏移后的控件正常使用,理论上需要匹配控件的所有情况,包括用户指定位置、指定大小的控件等等,若考虑不周就会出现问题,这样大大增加了系统及应用的复杂度,降低产品的稳定性,降低响应速度。
[0070]因此,提出了本发明实施例的核心构思之一,基于触摸屏硬件特性,调整触屏原点以实现触屏事件的映射,再上报给相应的窗口,实现触屏数据与显示界面的同步。
[0071 ] 参照图2,示出了本发明的一种在终端中的触控操作方法实施例的步骤流程图,具体可以包括如下步骤:
[0072]步骤201,当接收到窗口的移动指令时,按照所述移动指令中的偏移量调整在显示屏中的显示区域,以在显示区域中显示窗口 ;
[0073]在本发明实施例中,可以在驱动层中按照偏移量调整在显示屏中的显示区域。
[0074]在实际应用中,可以通过指定的操作触发窗口的移动指令,即指示如何调整显示区域的信息,按照该偏移量调整显示区域,使终端适应单手操作。
[0075]其中,该移动指令中包括偏移量,偏移量可以为显示区域移动的移动方向及移动距离。
[0076]用户可以通过点击某个物理按键,或者,点击某个控件,或者,触发某个操作手势,或者,倾斜手机等操作,触发调整指令,本发明实施例对此不加以限制。
[0077]在具体实现中,该偏移量可以默认设置的,如移动距离、移动方向是默认设置的,也可以实时根据指定的操作生成,如将操作手势的方向设置为移动方向、操作手势的距离与移动的距离成正比等等,本发明实施例对此不加以限制。
[0078]例如,如图3A所示,显示屏301中的显示区域302重叠,显示屏301的虚拟原点305位于左上角,坐标为(0,O),主窗口 306的原始大小为(W,H),其中,W为宽,H为高,显示区域302中包括窗口 303和窗口 304,窗口 303和窗口 304中都可以包括控件,窗口 303的位置为AU1, Y1),窗口 304的位置为B(x2,y2)。
[0079]其中,位置A和位置B可以是一个值,如(300,200),也可以是一个范围,如左上角是(300,200)、右下角是(350,250)的矩形。
[0080]窗口 303位于显示区域302的位置A,在用户的角度看,窗口 303在触摸屏的位置也应该是位置A,若用户意图触发窗口 303中的控件,应该点击触摸屏的位置A。
[0081]同理,窗口 304位于显示区域302的位置B,在用户的角度看,窗口 304在触摸屏的位置也应该是位置B,若用户意图触发窗口 304中的控件,应该点击触摸屏的位置B。
[0082]若用户使用右手单手操作可能无法触及窗口 303中的控件,则可以通过移动显示区域等操作将窗口 303往右下方调整。
[0083]若用户使用左手单手操作可能无法触及窗口 304中的控件,则可以通过移动显示区域等操作将窗口 304往左上方调整。
[0084]需要说明的是,本发明实施例中的终端,可以包括移动设备,例如,手机、平板电脑等等,也可以包括固定设备,例如,个人电脑等等,本发明实施例对此不加以限制。
[0085]这些终端可以支持包括Windows、Android (安卓)、1S、WindowsPhone等操作系统,为使本领域技术人员更好地理解本发明实施例,在本发明实施例中,将AndroicK安卓)作为终端系统的一种示例进行说明。
[0086]在本发明的一种优选实施例中,步骤201可以包括如下子步骤:
[0087]子步骤S11,对显示屏的显示区域的开始地址与结束地址叠加所述移动指令中的偏移量;
[0088]子步骤S12,将叠加偏移量之后的开始地址与所述结束地址写入显示屏的寄存器中,以驱动显示屏在所述开始地址与所述结束地址之间的显示区域显示窗口。
[0089]在本发明实施例中,可以采用硬件方式的平行或垂直滚动。
[0090]如果要使显示屏的显示区域滚动,可以通过修改显示屏的显示区域(帧缓冲区)的开始地址(如IXDBASEU)和结束地址(如IXDBASEL)的值来实现。
[0091]其中,显示区域的开始地址(如IXDBASEU)可以在显示屏的寄存器(如LCDSADDR1[20:0])中配置,显示缓存的开始地址A[21:1];
[0092]显示区域的结束地址(如IXDBASEL)可以在显示屏的寄存器(如LCDSADDR2[20:0])中配置,显示缓存的结束地址A[21:1]。
[0093]在发明实施例中,针对移动操作,可以在显示区域的开始地址的原始的位置的开始地址与结束地址的基础上,叠加偏移量,获得调整后的显示区域的开始地址与结束地址。
[0094]例如,如图3B所示,偏移量为(Δχ,Ay),则可以将显示区域302移动(Δχ,Ay)的距离,如虚线所示,移动后的显示区域302的虚拟原点305’的坐标为(ΛΧ,Ay),在移动后显示区域302中,窗口 303的位置A’为(X1+ Δχ, Υι+Δγ)。
[0095]当然,上述移动方式只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他移动方式,本发明实施例对此不加以限制。另外,除了上述移动方式外,本领域技术人员还可以根据实际需要采用其它移动方式,本发明实施例对此也不加以限制。
[0096]步骤202,当检测到触摸屏上被触发的触摸点时,根据所述偏移量计算所述触摸点相对于调整后的窗口的坐标位置,以生成触摸事件;
[0097]在本发明实施例中,可以在驱动层中根据所述调整数据计算所述触摸点相对于调整后的窗口的坐标位置,并按照该坐标位置生成触摸事件。
[0098]若显示区域进行了调整,显示屏显示的是调整后的显示区域(包括窗口、控件等),在用户的角度看,窗口(包括控件)已经调整,应该点击调整后的窗口(包括控件)触发相应的功能。
[0099]假设,显示屏的虚拟原点(左上角)为(0,O),触摸屏的虚拟原点(左上角,电流值为O的点)也是(0,0),调整窗口后的显示内容偏移(X(l,y(l),即调整后的显示屏的虚拟原点为(χο,y。)。
[0100]由于显示屏的位置及窗口(包括控件)之间的关系已经确定,即显示屏的原始位置及窗口(包括控件)之间的关系已经确定,并且,触摸屏与显示屏的位置关系是一一对应的,系统上层仍然认为窗口所依赖的显示屏的虚拟原点是(0,O),其所对应的触摸屏的虚拟原点是(0,O)。
[0101]由于经过移动,用户所点击的位置是触摸屏的物理位置,并非其需要触发的控件的在显示屏的显示区域中的位置,但是系统上层需要的触摸事件其实仍然是依赖于移动前的显示屏的虚拟原点(0,0)。
[0102]因此,在本发明实施例中,调整触摸屏的虚拟原点,以与显示屏的虚拟原点对应,进而计算坐标位置,即将触屏事件所依赖显示屏的虚拟原点从调整后的(X(l,y0)映射为调整前的(0,O),即将移动后的显示屏的显示区域与触摸屏的触屏区域一一对应,以获得用户需要触发的显示屏的真实位置。
[0103]例如,如图3A-图3B与图5所示,窗口 303(包括控件)的原始位置为A,在移动显示区域之后,窗口 303 (包括控件)的位置为A’。
[0104]在用户的角度看,窗口 303(包括控件)是显示在位置A’上,因此,用户一般会在触摸屏上点击位置A’,意图触发窗口 303中的控件。
[0105]虽然触摸屏的触摸区域没有发生变化,但是由于在驱动层对触摸屏的触摸点坐标进行位置的映射,应用层可以直接获取映射后的坐标位置,在某个角度看来,触摸屏的触摸区域可以认为是跟随窗口的调整而调整。
[0106]在一个示例中,针对移动操作,可以在触摸屏原始的触屏区域的基础上,叠加偏移量,获得移动后的触屏区域。
[0107]例如,与图3B相对应地,如图4所示,在触摸屏原始的触屏区域401的原点403的坐标为(0,0),偏移量为(Δχ, Ay),则可以将触屏区域401移动(Δχ, Δγ)的距离,获得如虚线所示触屏区域402,移动后的显示屏的虚拟原点403’的坐标为(Δχ,Ay),与,移动后的显示屏的虚拟原点305’ (Δχ, Δγ)相对应。
[0108]当然,上述调整方式只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他调整方式,本发明实施例对此不加以限制。另外,除了上述调整方式外,本领域技术人员还可以根据实际需要采用其它调整方式,本发明实施例对此也不加以限制。
[0109]在本发明的一种优选实施例中,步骤202可以包括如下子步骤:
[0110]子步骤S21,计算所述触摸点在所述触摸屏上的触摸点坐标;
[0111]子步骤S22,对所述触摸点的触摸点坐标减去偏移量,以获得坐标位置。
[0112]在具体实现中,用户可以通过手部、手写笔等方式在触摸屏上进行点击、滑动等操作,触摸屏可以检测在触摸屏的触摸点上的触摸信号,将该触摸信号转换成触摸事件和坐标位置(即发生触摸事件的位置),如直角坐标(即X坐标和Y坐标)。
[0113]其中,触摸事件具体可以包括按下事件(Act1n_Down)、移动事件(Act1n_Move)和抬起事件(Act1nJJp)等等。
[0114]其中,按下事件(Act1n_Down)可以表示用户在触摸屏按下未移动、未抬起,移动事件(Act1ruMove)可以表示用户在触摸屏按下后开始移动(或滑行),抬起事件(Act1nJJp)可以表示用户在触摸屏抬起。
[0115]不同的触摸事件可以组合定义触控手势,驱动层将触摸事件上报给应用层,再分发到相关的应用中,应用可以按照该触控手势触发相应的操作,完成触控操作。
[0116]在本发明实施例中,可以依赖调整后的触屏区域,即依赖调整后的触摸屏的虚拟原点计算坐标位置,以适应显示屏中窗口的调整。
[0117]如图4所示,若用户点击在触摸屏上的位置A’ (触摸点),则可以计算在调整后的触屏区域402中,相对于调整后的虚拟原点403’的位置,与调整后的显示区域对
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1