手持装置及利用其进行项目拖动控制的方法制造方法及图纸

技术编号:7091608 阅读:220 留言:0更新日期:2012-04-11 18:40
一种手持装置及利用其进行项目拖动控制的方法,该方法包括如下步骤:当手持装置的触控式屏幕上的一个项目在拖动后位置发生变动,更新当前屏幕项目列表,所述项目包括widget和图标;如果该拖动项目没有被放下,则计算该拖动项目的当前位置;如果该拖动项目的位置发生变动,且该拖动项目没有盖在widget上面,则从当前屏幕项目列表中,依次获取一个项目;如果该项目合法,则确定该项目移动的目标位置,将该合法的项目移动到确定的目标位置。利用本发明专利技术可实现widget和图标的混排。

【技术实现步骤摘要】

本专利技术涉及一种电子装置及方法,尤其涉及一种。
技术介绍
目前手机的操作系统比较流行的主要有Android系统和iPhone系统两种。其中, 在Android系统中,图标不能自动排列,放置位置比较随意,只要是空位置都可以放,可以随心所欲的摆放图标,但如果要腾出一定空位置,需要一个一个移动原有图标。在iPhone 系统中,图标虽然可以自动排列,但没有对widget (微件,有别于一般图标,比图标占有的区域大)的自动排列,即没有实现widget和图标的混排。
技术实现思路
鉴于以上内容,有必要提供一种项目拖动控制方法,其可实现widget和图标的混排。在一个实施例中,该方法包括如下步骤(a)判断手持装置的触控式屏幕上的一个项目在拖动后位置是否发生变动,所述项目包括widget和图标;(b)如果该项目在拖动后位置发生变动,则更新当前屏幕项目列表,然后执行步骤 (c),如果该项目在拖动后位置没有发生变动,则直接执行步骤(c);(c)判断拖动项目有没有被放下,如果该拖动项目被放下,则在触控式屏幕上显示重新排列后的项目,如果该拖动项目没有被放下,则执行步骤(d);(d)计算该拖动项目的当前位置;(e)如果该拖动项目的位置没有变动,或该拖动项目盖在widget上面,则返回步骤(c),如果该拖动项目的位置发生变动,且该拖动项目没有盖在widget上面,则执行步骤 (f);(f)从当前屏幕项目列表中,依次获取一个项目;(g)如果该项目合法,则确定该项目移动的目标位置,将该合法的项目移动到确定的目标位置;及(h)如果该项目不合法,则返回步骤(f),转到下一个项目,直到所有项目执行完毕。前述方法可以由手持装置执行,其中该手持装置具有附带了图形用户界面(GUI) 的触控式屏幕、一个或多个处理器、存储器以及保存在存储器中用于执行这些方法的一个或多个模块、程序或指令集。在某些实施例中,该手持装置提供了包括无线通信在内的多种功能。用于执行前述方法的指令可以包含在被配置成由一个或多个处理器执行的计算机程序产品中。相较于现有技术,所述的,在Android 系统的基础上实现了 widget和图标的混排。相对于原来实现,图标可以自动排列,widget 也可以挤走图标。如果用户移动widget或者图标到其它屏幕,那么其它屏幕在有空间放下该widget或者图标的情况下,也会自动排列。本专利技术在原有图标排列基础上增加widget和图标的混排,避免了 widget与图标排列无规则,使得用户界面更美观,不需要用户一个一个的去移动图标来腾出空位置创建 widget,使得操作更方便。附图说明图1是本专利技术手持装置较佳实施例的结构方框图。图2是利用手持装置进行项目拖动控制的方法的较佳实施例的流程图。主要元件符号说明手持装置2存储器21触控式屏幕22处理器23项目拖动控制系统210具体实施例方式本专利技术涉及到一个自动排列的概念,所以先解释一下本专利技术自动排列的特点。本专利技术自动排列的概念我们可以把一个屏幕分成NXN的网格,也就是说有N行, N列,格子的序号从0到NXN-1。一般图标占用1X1个格子,widget (微件)占用的区域大于1X1小于等于NXN。假设一个图标的位置的索引为k,那么0到k-Ι都不能为空(被占用的位置为非空,没有占用则为空)。假设一个widget的长宽为iXj,左上角所在位置为第m行第η列,那么该widget所在区域(行范围为m到m+i-1,列范围为η到η+j-l所产生的交集)是不能再放其他图标或者widget,除非用户把该widget移走。如图1所示,是本专利技术手持装置较佳实施例的结构方框图。在本实施例中,该手持装置2包括存储器21、触控式屏幕22和处理器23。其中,所述项目拖动控制系统210 存储于存储器21中,用于对触控式屏幕22上的widget和图标进行混排,具体过程参见图 2的描述。在本实施例中,所述手持装置2包括,但不限于,手机或PDA (Personal Digital Assistant,个人数字助理)等具有资料处理功能的电子设备。在本实施例中,所述项目拖动控制系统210可以被分割成一个或多个模块,所述一个或多个模块被配置成由一个或多个处理器(本实施例为一个处理器2 执行,以完成本专利技术。本专利技术所称的模块是完成一特定功能的计算机程序段,比程序更适合于描述软件在计算机中的执行过程。所述触控式屏幕22用于对通过指示笔或手指而在一个或多个接触点进行的物理接触做出响应。如图2所示,是利用手持装置进行项目拖动控制的方法的较佳实施例的流程图。步骤S10,判断触控式屏幕22上的一个项目在拖动后位置是否发生变动。在本实施例中,如果一个项目在拖动后位置发生过变动,则需要重新计算当前屏幕项目列表,执行步骤Sll ;如果一个项目在拖动后位置没有发生过变动,则不需要重新计算当前屏幕项目列表,执行步骤S12。其中,项目位置的初始状态为false(没有发生变动)。在本实施例中, 所述项目包括widget和图标两种类型。在其它实施例中,还可以设定为如果一个项目的位置变化值小于预设值(如1毫米),则判定该项目的位置没有发生变动;如果一个项目的位置变化值大于或等于该预设值,则判定该项目的位置发生过变动。步骤S11,根据该项目的位置变更,更新当前屏幕项目列表。在本实施例中,该当前屏幕项目列表用于存储每个项目的位置信息(如坐标值)和属性(如0和1)等。其中,项目的属性用于记录该项目是Widget还是图标。例如,用1记录该项目为widget,用0记录该项目为图标。例如,一个项目从A位置移动至B位置,则将该项目在当前屏幕项目列表中的位置信息更新为B位置。步骤S12,判断用户是否放下拖动项目。如果用户放下拖动项目,则在触控式屏幕 22上显示重新排列后的项目,流程结束;如果用户没有放下拖动项目,则执行步骤S13。步骤S13,计算该拖动项目的当前位置,即该拖动项目的新位置。在本实施例中,计算该拖动项目的当前位置是指计算该拖动项目的中心点坐标值。在其它实施例中,计算该拖动项目的当前位置后还进一步包括根据该拖动项目的当前位置进行边界处理。具体而言,如果该拖动项目的当前位置超出当前屏幕的边界,则调整该拖动项目的当前位置,使该拖动项目的当前位置靠近当前屏幕的边界。步骤S14,判断是否需要重新排列当前屏幕项目列表中的项目。在本实施例中, widget可以挤动图标,但图标不能挤动widget。具体而言,如果该拖动项目的位置没有变动,或该拖动项目盖在widget上面,则不需要重新排列当前屏幕项目列表中的项目,则返回步骤S12 ;如果该拖动项目的位置发生变动,且该拖动项目没有盖在widget上面,则需要重新排列当前屏幕项目列表中的项目,执行步骤S15。步骤S15,从当前屏幕项目列表中,依次获取一个项目。步骤S16,判断该项目是否合法。如果该项目合法,则执行步骤S17 ;如果该项目不合法,则转到步骤S19。当还有项目没有执行完毕时,再返回步骤S15,转到下一个项目;如果所有项目都执行完毕,则返回步骤S10。其中,判断该项目是否合法的规则为从当前屏幕第一个项目开始移动,如果该项目不是空位置,即该位置存放了 widget或图标,不是该拖动项目且不是widget,则为合法移动项目;反之,如果该本文档来自技高网...

【技术保护点】
1.一种项目拖动控制方法,其特征在于,该方法包括如下步骤:(a)判断手持装置的触控式屏幕上的一个项目在拖动后位置是否发生变动,所述项目包括widget和图标;(b)如果该项目在拖动后位置发生变动,则更新当前屏幕项目列表,然后执行步骤(c),如果该项目在拖动后位置没有发生变动,则直接执行步骤(c);(c)判断拖动项目有没有被放下,如果该拖动项目被放下,则在触控式屏幕上显示重新排列后的项目,如果该拖动项目没有被放下,则执行步骤(d);(d)计算该拖动项目的当前位置;(e)如果该拖动项目的位置没有变动,或该拖动项目盖在widget上面,则返回步骤(c),如果该拖动项目的位置发生变动,且该拖动项目没有盖在widget上面,则执行步骤(f);(f)从当前屏幕项目列表中,依次获取一个项目;(g)如果该项目合法,则确定该项目移动的目标位置,将该合法的项目移动到确定的目标位置;及(h)如果该项目不合法,则返回步骤(f),转到下一个项目,直到所有项目执行完毕。

【技术特征摘要】

【专利技术属性】
技术研发人员:王定国黄小军鄢素涛
申请(专利权)人:上海科泰世纪科技有限公司
类型:发明
国别省市:31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1