一种利用补间动画实现桌面Widget动画的方法

文档序号:6600660阅读:442来源:国知局
专利名称:一种利用补间动画实现桌面Widget动画的方法
技术领域
本发明涉及一种实现桌面Widget动画的方法,特别是涉及一种在标准Android开 发平台上利用补间动画实现桌面Widget动画的方法。
背景技术
Google推出的Android操作系统的使用越来越流行,尤其是在智能手机的应用 上。Android SDK (Software Development Kit的缩写,即软件开发工具包)让开发Android 平台应用软件变得很容易,丰富多样的应用程序也加快了 Android系统在产品中的推广。 而Android的桌面Widget (是一种用户/系统可交互的可视化的小工具,这样的工具提供 单一目的的服务,像显示新闻、天气预报、时钟、股票信息、日历功能等)也使Android系统 的桌面变得多姿多彩,用户/系统可以自定义桌面,根据需要放上不同的Widget小插件。但 受限于Android SDK对Widget应用程序开发的支持程度,不能像在开发Activity应用程 序那样自由地对界面上的元素进行控制。如果用户/系统想想在Widget上实现诸如动画 一样的效果会很困难。目前的技术下,为实现Widget动画效果,通过Remote Views (远程视图对象)不停 地更换Image View(图像视图)中的图片而产生动画效果。此方法不仅很耗费系统资源,而 且产生的动画效果不理想,很难实现一些较复杂、要求较高的动画。另外,在Widget动画的 过程中,如果在Widget布局中的布局对象上预先定义好布局动画,则会在布局第一次绘制 到界面时对布局对象的子控件产生作用。但此后若界面布局不再改变,仅仅是通过Widget 框架机制对界面元素的数据进行更新,布局对象上定义的动画将不再产生作用。

发明内容
本发明的目的在于克服现有技术的不足,提供一种利用补间动画实现桌面Widget 动画的方法,应用于标准Google Android SDK开发平台上,有效地解决了在开发Android 桌面Widget应用程序时,实现动画效果较难的问题。为了达到上述目的,本发明采用的技术方案是一种利用补间动画实现桌面 Widget动画的方法,在开发Android桌面Widget应用程序时,在资源中定义好补间动画 (补间动画指Android SDK开发平台中的TweenAnimation,定义动画的初始帧和结束帧,动 画的中间插补帧由计算机自动运算得出)并将该动画赋值于布局中的布局对象的布局动 画属性。操作中,通过切换Widget布局使布局中布局对象上的补间动画产生作用,布局对 象上的动画作用于布局对象内的子控件,以此实现Android桌面Widget丰富多彩的动画。一种利用补间动画实现桌面Widget动画的方法,其步骤如下步骤1,定义补间动画的动画效果N和布局η ;步骤2,Widget的当前布局等待用户事件或系统事件的发生;步骤3,用户事件或系统事件需要产生某个动画效果N ;步骤4,系统判断用户事件或系统事件需要产生的动画效果N ;步骤5,判断包含动画效果N的布局η与当前布局是否一样;
步骤6,包含动画效果N的布局η与当前布局一样,则切换至与布局η不同的布局;步骤7,包含动画效果N的布局η与当前布局不一样,则切换至布局η,布局η中的 布局对象的布局动画属性指向用户或系统所需的动画定义,该动画将对布局对象中的子控 件产生作用,子控件的动画效果即为用户或系统所需动画;步骤8,切换至包含动画效果N的布局n,Widget界面更新,布局中布局对象的布 局动画属性所指向的动画产生作用,产生动画效果N。子控件为Widget所支持的控件。与现有技术相比,本发明的有益效果是有效地解决了 Android桌面Widget动 画的实现问题,可以应用于目前发布的所有Android版本。本发明在Widget应用程序里 间接调用了 Android系统补间动画,开发人员编写应用程序时,只需要定义动画,动画由 Android系统实现,可以较理想地实现透明度变化动画、位置移动动画、旋转动画、缩放动画 和这几种动画组合后产生的动画。


图1为本发明利用补间动画实现桌面Widget动画的流程图。
具体实施例方式下面结合实施例参照附图进行详细说明,以便对本发明的技术特征及优点进行更 深入的诠释。一种利用补间动画实现桌面Widget动画的方法,在开发Android桌面Widget应 用程序时,在资源中定义好补间动画,并将该动画赋值于布局中的布局对象的布局动画属 性。操作中,通过切换Widget布局使布局中布局对象上的补间动画产生作用,布局对象上 的动画作用于布局对象内的子控件,以此实现Android桌面Widget的动画。本发明利用补间动画实现桌面Widget动画的流程图如图1所示。当资源定义好 以后,在Widget应用程序中产生Widget动画效果,其步骤如下步骤1,定义补间动画的动画效果N和布局η ;步骤2,Widget的当前布局等待用户事件或系统事件的发生;步骤3,用户事件或系统事件需要产生某个动画效果N ;步骤4,系统判断用户事件或系统事件需要产生的动画效果N ;步骤5,判断包含动画效果N的布局η与当前布局是否一样;步骤6,包含动画效果N的布局η与当前布局一样,则切换至与布局η不同的布局;步骤7,包含动画效果N的布局η与当前布局不一样,则切换至布局η,布局η中的 布局对象的布局动画属性指向用户或系统所需的动画定义,该动画将对布局对象中的子控 件产生作用,子控件的动画效果即为用户或系统所需动画;步骤8,切换至包含动画效果N的布局n,Widget界面更新,布局中布局对象的布 局动画属性所指向的动画产生作用,产生动画效果N。子控件为Widget所支持的控件。 在实际操作中,对Widget应用程序工程中需要的补间动画的动画效果和布局进 行定义。
补间动画通过XML (Extensible Markup Language的缩写,即可扩展标记语言)文 件定义的补间动画,能定义1个或多个动画,每个动画为Android系统支持的透明度变化动 画、位置移动动画、旋转动画、缩放动画的一个或多个,或是它们之间的组合,比如定义的 动画1,以一个XML文件定义的动画,是透明度变化动画、位置移动动画、旋转动画、缩放动 画的一个;定义的动画2,以一个XML文件定义的动画,是透明度变化动画、位置移动动画、 旋转动画、缩放动画的一个;定义的动画3,以一个XML文件定义的动画,是透明度变化动 画、位置移动动画、旋转动画、缩放动画的一个;……;定义的动画N,以一个XML文件定义 的动画,是透明度变化动画、位置移动动画、旋转动画、缩放动画的一个或多个,或是它们之 间的组合。补间动画通过XML文件定义的布局,包含一个或多个布局。在需要产生动画效果 的布局中,将布局对象的布局动画属性设定为补间动画中定义的动画中的一种。此处的布 局对象为Widget所支持的布局对象,如框架布局、线性布局和相对布局,或是它们之间的 组合,这些布局对象的布局动画属性指向的动画将作用于布局对象内的子控件。定义布局 如下定义的布局1,是Widget所支持的布局对象之一;定义的布局2,是Widget所支持的 布局对象之一;定义的布局3,是Widget所支持的布局对象之一;……;定义的布局n,是 Widget所支持的布局对象之一或是它们个之间的组合。通过以上实施方式的描述,本领域的技术人员可以清楚地了解到本发明能实现在 Android桌面Widget上调用Android系统补间动画,产生良好的Widget动画效果。尽管本发明通过具体实施例对其作出了清晰而完整的描述,但是发明不仅仅限于 所述实施例,并且对本领域的技术人员来说,基于本发明而作出的所有的改进和选择,是可 能发生的并且都包括在本发明之中。
权利要求
一种利用补间动画实现桌面Widget动画的方法,应用于标准GoogleAndroid SDK开发平台上,步骤如下步骤1,定义补间动画的动画效果N和布局n;步骤2,Widget的当前布局等待用户事件或系统事件的发生;步骤3,用户事件或系统事件需要产生某个动画效果N;步骤4,系统判断用户事件或系统事件需要产生的动画效果N;步骤5,判断包含动画效果N的布局n与当前布局是否一样;步骤6,包含动画效果N的布局n与当前布局一样,则切换至与布局n不同的布局;步骤7,包含动画效果N的布局n与当前布局不一样,则切换至布局n,布局n中的布局对象的布局动画属性指向用户或系统所需的动画定义,该动画将对布局对象中的子控件产生作用,子控件的动画效果即为用户或系统所需动画;步骤8,切换至产生包含动画效果N的布局n,Widget界面更新,布局中布局对象的布局动画属性所指向的动画产生作用,产生动画效果N。
2.根据权利要求1所述的利用补间动画实现桌面Widget动画的方法,其特征在于所 述的Android系统的资源中添加补间动画的动画效果和布局的定义。
3.根据权利要求2所述的利用补间动画实现桌面Widget动画的方法,其特征在于所 述的动画效果N包括透明度变化动画、位置移动动画、旋转动画、缩放动画和这几种动画组 合后产生的动画。
4.根据权利要求2所述的利用补间动画实现桌面Widget动画的方法,其特征在于所 述的布局n中的布局对象为Widget所支持的布局对象和这些布局对象组合后产生的布局 对象。
5.根据权利要求1所述的利用补间动画实现桌面Widget动画的方法,其特征在于所 述的子控件为Widget所支持的控件。
全文摘要
本发明公开了一种利用补间动画实现桌面Widget动画的方法,应用于Android开发平台上。在资源中定义好补间动画的动画效果N和布局n,将该动画赋值于布局中的布局对象的布局Animation属性,利用切换Widget布局使布局中布局对象上的补间动画产生作用,布局对象上的动画作用于布局对象内的子控件,实现Android桌面Widget动画。本发明相对于现有技术通过远程视图对象不停地更换图像视图中的图片而产生动画效果,可以简捷有效实现透明度变化动画、位置移动动画、旋转动画、缩放动画和这几种动画组合后产生的动画。
文档编号G06F9/44GK101833447SQ20101014467
公开日2010年9月15日 申请日期2010年4月8日 优先权日2010年4月8日
发明者姜磊 申请人:广东欧珀移动通信有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1