一种用户图像控件的处理方法

文档序号:6431293阅读:105来源:国知局
专利名称:一种用户图像控件的处理方法
技术领域
本发明涉及用户图像控件的处理方法,尤其涉及Android平台用户图像控件在MVC设计模式下的用户图像控件的处理方法。
背景技术
在现有的Android技术中,可以通过在Android Home进行调入也很方便地调入多个Widget并更加每个Widget属性进行调整,这样在Widget就丰富了 Android Home同时也提供了必要的信息给用户。同时,MVC设计架构的目的是实现Web系统的职能分工。MVC设计架构包括模型层(Model),视图层(View)和控制层(Controller),MVC是三个层的首字母的缩写。·所述Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。所述View层用于与用户的交互,通常用JSP来实现。所述Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。在所述MVC设计架构的三个组成部分中,Model层拥有最多的处理任务。被Model层返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。所述View层是用户看到并与之交互的界面。如何处理应用程序的界面(视图)变得越来越有挑战性。所述MVC能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储数据的还是单机存储数据,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。所述ContiOller层接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。然而,现有的Android技术对Widget的支持也带有局限性,不能在MVC设计架构中实现调用Android Widget,也不能对Widget进行随意的属性改变,这样就对用户带来了诸多不便。

发明内容
本发明旨在提供一种用户图像控件的处理方法,实现在MVC设计架构中实现调用Android Widget,给用户带来操作上的便利。本发明的用户图像控件的处理方法,包括
从系统中获取用户图像控件列表;
对用户图像控件进行封装;其中,封装后的用户图像控件包括模型层、视图层和控制层,且所述封装后的用户图像控件具备符合模型层、视图层和控制层架构设计模式的通用对象属性;
展示封装后的用户图像控件;
基于来自外部的触发信息,将所述用户图像控件置于应用环境中;其中,所述应用环境符合模型层、视图层和控制层架构设计模式;
基于来自外部的操作信息,依据所述通用对象属性实现对所述用户图像控件的操作。可选的,采用截获用户图像控件调用入口的方式从系统中获取用户图像控件列表。可选的,所述截获用户图像控件调用入口包括创建继承系统应用用户图像控件 单元的用户图像控件提供单元,以获取系统用户图像控件列表;创建继承系统应用用户图像控件管理器的用户图像控件管理器,以实现对用户图像控件的管理。可选的,所述对用户图像控件进行封装包括创建继承基础容器类模型的模型层、创建继承基础容器类视图的视图层、更新所述用户图像控件的通用对象属性。可选的,所述展示封装后的用户图像控件采用列表或缩略图的形式。可选的,所述缩略图在获取系统用户图像控件列表时获得。可选的,所述来自外部的触发信息包括系统长按事件或者系统点击事件。可选的,所述来自外部的操作信息包括移动、任意比例放大缩小和删除。可选的,可以在所述应用环境中放置多个所述用户图像控件。可选的,所述应用环境是笔记。所述用户图像控件可以和所述笔记的内容混排。可选的,所述用户图像控件的对象属性可存储。 可选的,所述来自外部的操作信息可以撤销。可选的,所述来自外部的操作信息可以是个性化定制事件。相比现有技术,本发明的用户图像控件的处理方法,通过从系统中获取用户图像控件列表获取,并对对用户图像控件进行封装,使封装后的用户图像控件具备符合模型层、视图层和控制层架构设计模式的通用对象属性,在基于来自外部的触发信息,将所述用户图像控件置于应用环境中,可以基于来自外部的操作信息,依据所述通用对象属性实现对所述用户图像控件的操作,进而实现了在MVC设计架构中实现调用Android Widget,给用户带来操作上的便利。


图I是本发明的用户图像控件的处理方法的流程图。
具体实施例方式下面结合附图和具体实施例对本发明的用户图像控件的处理方法做详细的说明。图I是本发明的用户图像控件的处理方法的流程图。所述用户图像控件的处理方法包括
步骤Si,从系统中获取用户图像控件列表。步骤S2,对用户图像控件进行封装;其中,封装后的用户图像控件包括模型层、视图层和控制层,且所述封装后的用户图像控件具备符合模型层、视图层和控制层架构设计模式的通用对象属性。步骤S3,展示封装后的用户图像控件。步骤S4,基于来自外部的触发信息,将所述用户图像控件置于应用环境中。其中,所述应用环境符合模型层、视图层和控制层架构设计模式。步骤S5,基于来自外部的操 作信息,依据所述通用对象属性实现对所述用户图像控件的操作。以上方法的步骤SI中,所述从系统中获取用户图像控件列表,可以是采用截获用户图像控件调用入口的方式从系统中获取用户图像控件列表。所述截获用户图像控件调用入口包括
创建继承系统应用用户图像控件单元的用户图像控件提供单元,以获取系统用户图像控件列表;
创建继承系统应用用户图像控件管理器的用户图像控件管理器,以实现对用户图像控
件的管理。以上方法的步骤S2中,所述对用户图像控件进行封装包括
创建继承基础容器类模型的模型层、创建继承基础容器类视图的视图层、更新所述用户图像控件的通用对象属性。以上方法的步骤S3中,所述展示封装后的用户图像控件采用列表或缩略图的形式。所述缩略图在获取系统用户图像控件列表时获得。以上方法的步骤S4中,所述来自外部的触发信息包括系统长按事件或者系统点击事件。以上方法的步骤S5中,所述来自外部的操作信息,可以是移动、任意比例的放大缩小、删除等。
以下以在符合MVC架构设计模式的应用环境下处理Android widget的方法为例来说明本发明的用户图像控件的处理方法。步骤SI I,截获Android widget的调用入口。包括创建一个WidgetProvider继承AppffidgetProvider,获取 widget 列表;创建一个 WidgetManager 继承 AppWidgetManager,负责管理AppWidget。创建一个WidgetProvider 继承 AppWidgetProvider,获取 widget 列表。所述WidgetProvider是MVC设计架构中的用户图像控件提供单兀,所述AppWidgetProvider是MVC设计架构中的系统应用用户图像控件单元。所述获取widget列表,可以通过类似的命令实现List〈AppWidgetProvidInfo> list = AppffidgetManager.getlnstalledProvider O。所述widget列表包括配置文件的信息、Widget的图标、初始化布局、标签、最小高度、最小宽度、预览图像、Widget的Provider、缩放模式和更新频率等。创建一个WidgetManager 继承 AppWidgetManager,负责管理 AppWidget。所述WidgetManager是MVC设计架构中的用户图像控件管理器,所述AppWidgetManager是MVC设计架构中的系统应用用户图像控件管理器。步骤S12,封装widget,实现封装对象的通用属性符合MVC架构设计模式。包括创建新的Widget的Model继承BaseContainerModel ;创建新的Widget的View继承BaseContainerView0创建新的Widget 的 Model 继承 BaseContainerModel。所述BaseContainerModel是MVC设计架构中模型层的基础容器类模型。所述模型层作为与系统底层接触比较紧密的一层,其主要包括状态信息单元,应用逻辑单元和数据存储单元。所述状态信息单元用于表达具体序列化和反序列化的对象信息和状态,以BSObject,BaseContainerModel等形式表达。所述应用逻辑单元应用于BSObject等之上的业务逻辑,包括触发View的逻辑。所述数据存储单元用于对系统进行序列化和反序列化的过程,以XML, Binary和Sqlite的形式表达。所述模型层的主要层级结构包括基础容器类模型,应用环境容器类模型,应用 环境基本容器类模型。所述基础容器类模型(BSObject):是基础类,用于定义最基本对象数据信息和基本的属性设置。所述应用环境容器类模型(ModelObject):继承BSObject,用于定义所述应用环境的模型对象的基本属性和方法。所有的非容器类的模型都是从应用环境容器类模型继承而来。应用环境基本容器类模型(BaseContainerModel)继承ModelObject,定义所述应用环境的基本的容器类的模型的属性和方法。所有的容器类的模型都是从BaseContainerModel 继承而来。所述应用环境基本容器类模型包含一个对象管理类模型(ObjectManager),包含BaseContainerModel类型列表,用于对容器类的模型进行管理。容器类对象模型和非容器类对象模型的区别在与它们是否拥有对象管理类模型。创建新的Widget 的 View 继承 BaseContainerView。所述BaseContainerView是MVC设计架构中视图层的基础容器类视图。所述View层作为与终端用户交互最紧密的一层,在用户操作方面起到至关重要的作用,其包括用户图像控件单元,图像控件层次关系单元,图像控件布局关系单元,碰撞测试单元和控件更新单元。所述用户图像控件单元(Widgets):用于描述直接和用户进行交互的用户图像控件,比如,按钮,闹钟等。所述图像控件层次关系单元(Layering):用于描述图形控件之间的层次关系,比如,总是在最上面,总是在最下面等。图像控件布局关系单元(Layout):用于描述图形控件之间的布局关系,比如,绝对布局,网格布局等。所述碰撞测试单元(Hit Testing):用于描述用户如何选择对象和对象之间碰撞测试等。所述控件更新单元(View Framework):用于描述图形控件在Canvas上面的管理包括更新、刷新等。所述视图层的主要层级结构包括基础类视图,对象类视图,管理类视图,基础容器类视图,布局类视图和层次类视图。
所述基础类视图(BSObjectView):是视图类的基础,继承ObjectChangeListener接口并实现 onObjectChanged()接口。所述对象类视图ViewObject :继承BSObjectView并作为简单视图和容器视图基础。所述基础容器类视图(BaseContainerView):继承ViewObject并具备视图类、布
局和层次的管理。所述管理类视图(ViewObjectManager)继承BaseContainerView ,是BSObjectView 的管理类。所述布局类视图(ViewLayoutManager):继承BaseContainerView,布局管理类。 所述层次类视图(ViewLayeringManager):继承BaseContainerView ,层次管理类。步骤S13,通过列表或缩略图的形式展现Android widget。所述缩略图在获取系统用户图像控件列表时获得。步骤S14,通过长按或者点击操作将widget放置于应用环境中。重写widget的系统长按事件和点击事件,触发widget操作。进而实现通过长按或者点击操作将widget放置于应用环境中。所述应用环境是符合MVC架构设计模式的应用环境。步骤S15,封装后的widget具备通用的对象属性,通过对通用对象的基本操作可以实现,包括移动、任意比例的放大缩小、删除等。通过MVC的控制层实现所述基本操作。所述控制层作为MVC设计架构的中间层起到承上启下的作用,其包括动作单元,返回恢复单元和消息流单元。动作单元(Action):用户通过操作传统Π而关联的行为动作,比如,菜单,按钮等操作。返回恢复单元(Undo/Redo):用户针对操作进行返回和恢复。比如,对象的CRUD动作。消息流单元(Messaging):用于描述事件消息流如何分发和传递。所述动作单元的主要层级结构包括单实例动作管理类单元,动作类型定义单元,动作单元接口定义单元,动作实现单元,对象动作实现单元,容器对象动作实现单元,页动作实现单元,工具动作实现单元,基础行为命令单元和基础行为命令单元。所述单实例动作管理类单元(XNoteActionManager):单实例Action管理类,提供诸如addAction (…),removeAction (…)等接口以供调用。所述动作类型定义单元(ActionCode):用于对Action的类型定类。所述动作单元接口定义单元(IXNoteAction):用作Action单元接口定义,比如,getDescription (…),run (…)等。所述动作实现单元(XNoteAction):实现IXNoteAction接口并提供基础的实现,并通过IActionCommand索引到具体的与Command的相关的操作Action。所述对象动作实现单元(ObjectAction):继承XNoteAction并作为对象行为的基础类,被具体的对象行为所继承。所述具体的对象行为,包括CreateSwitchAction,DeleteSwitchAction 等。
所述容器对象动作实现单元(ContainerAction)继承XNoteAction并作为容器类对象行为的基础类,被具体的容器类行为所继承。所述具体的容器类行为包括,PageAction0所述页动作实现单元(PageAction):是具体的容器类行为,其继承ContainterAction 并定义基于 Page 的行为,包括PageUndo, PageList, PageRedo。所述工具动作实现单元(ToolAction):继承XNoteAction并作为工具行为基类,包括LassoAction, FDrawAction, RDrawAction0所述基础行为命令单兀(IActionCommand):继承XNoteAction并作为Undo/Redo的基础行为命令。 所述基础行为命令单兀(BaseActionCommand):实现IActionCommand基础接口并具体行为命令所继承用于实现具体行为。所述具体行为命令,包括,CreateObjectAction,CopyObjectAction 和 DeleteObjectAction0在本实施例中,可以重复步骤Sll至步骤S14实现在所述应用环境中放置多个widget。所述应用环境可以是符合MVC设计架构的笔记。经过封装后的Widget作为一个单独对象可以通过对通用对象的基本操作可以实现和笔记的内容进行混排,包括左对齐、右对齐等操作。封装后的Widget的对象属性和引用可以被存储起来,下次再次装载实现以最后保存的属性显示。基于封装后的具有通用属性的Widget的操作动作,可以被存储于Undo/Redo堆栈中,方便进行Undo/Redo动作。所述Undo/Redo动作是基于用户的线性操作,也就是说擦去上一次的改变并返回是一个状态。所述Undo/Redo动作不支持非线性的针对某条记录的操作。相比现有技术,本发明的用户图像控件的处理方法,通过从系统中获取用户图像控件列表获取,并对对用户图像控件进行封装,使封装后的用户图像控件具备符合模型层、视图层和控制层架构设计模式的通用对象属性,在基于来自外部的触发信息,将所述用户图像控件置于应用环境中,可以基于来自外部的操作信息,依据所述通用对象属性实现对所述用户图像控件的操作,进而实现了在MVC设计架构中实现调用Android Widget,给用户带来操作上的便利。以上公开了本发明的多个方面和实施方式,本领域的技术人员会明白本发明的其它方面和实施方式。本发明中公开的多个方面和实施方式只是用于举例说明,并非是对本发明的限定,本发明的真正保护范围和精神应当以权利要求书为准。
权利要求
1.一种用户图像控件的处理方法,其特征在于,包括 从系统中获取用户图像控件列表; 对用户图像控件进行封装;其中,封装后的用户图像控件包括模型层、视图层和控制层,且所述封装后的用户图像控件具备符合模型层、视图层和控制层架构设计模式的通用对象属性; 展示封装后的用户图像控件; 基于来自外部的触发信息,将所述用户图像控件置于应用环境中;其中,所述应用环境符合模型层、视图层和控制层架构设计模式; 基于来自外部的操作信息,依据所述通用对象属性实现对所述用户图像控件的操作。
2.根据权利要求I所述的用户图像控件的处理方法,其特征在于,采用截获用户图像控件调用入口的方式从系统中获取用户图像控件列表。
3.根据权利要求2所述的用户图像控件的处理方法,其特征在于,所述截获用户图像控件调用入口包括 创建继承系统应用用户图像控件单元的用户图像控件提供单元,以获取系统用户图像控件列表; 创建继承系统应用用户图像控件管理器的用户图像控件管理器,以实现对用户图像控件的管理。
4.根据权利要求I所述的用户图像控件的处理方法,其特征在于,所述对用户图像控件进行封装包括 创建继承基础容器类模型的模型层、创建继承基础容器类视图的视图层、更新所述用户图像控件的通用对象属性。
5.根据权利要求I所述的用户图像控件的处理方法,其特征在于,所述展示封装后的用户图像控件采用列表或缩略图的形式。
6.根据权利要求5所述的用户图像控件的处理方法,其特征在于,所述缩略图在获取系统用户图像控件列表时获得。
7.根据权利要求I所述的用户图像控件的处理方法,其特征在于,所述来自外部的触发信息包括系统长按事件或者系统点击事件。
8.根据权利要求I所述的用户图像控件的处理方法,其特征在于,所述来自外部的操作信息包括移动、任意比例放大缩小和删除。
9.根据权利要求I所述的用户图像控件的处理方法,其特征在于,可以在所述应用环境中放置多个所述用户图像控件。
10.根据权利要求I所述的用户图像控件的处理方法,其特征在于,所述应用环境是笔记。
11.根据权利要求10所述的用户图像控件的处理方法,其特征在于,所述用户图像控件可以和所述笔记的内容混排。
12.根据权利要求I所述的用户图像控件的处理方法,其特征在于,所述用户图像控件的对象属性可存储。
13.根据权利要求I所述的用户图像控件的处理方法,其特征在于,所述来自外部的操作信息可以撤销。
14.根据权利要求I所述的用户图像控件的处理方法,其特征在于,所述来自外部的操作信息可以是个性化定制事件。
全文摘要
一种用户图像控件的处理方法,包括从系统中获取用户图像控件列表;对用户图像控件进行封装;其中,封装后的用户图像控件包括模型层、视图层和控制层,且所述封装后的用户图像控件具备符合模型层、视图层和控制层架构设计模式的通用对象属性;展示封装后的用户图像控件;基于来自外部的触发信息,将所述用户图像控件置于应用环境中;其中,所述应用环境符合模型层、视图层和控制层架构设计模式;基于来自外部的操作信息,依据所述通用对象属性实现对所述用户图像控件的操作。实现了在MVC设计架构中实现调用AndroidWidget,给用户带来操作上的便利。
文档编号G06F9/44GK102955688SQ20111024297
公开日2013年3月6日 申请日期2011年8月23日 优先权日2011年8月23日
发明者吴勇 申请人:上海无戒空间信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1