Lewa锁屏教程(2014-01-02).docxVIP

  • 26
  • 0
  • 约2.8万字
  • 约 21页
  • 2016-08-22 发布于河南
  • 举报
Lewa锁屏教程(2014-01-02)

LAML教程MORE LAML 概述LAML引擎脚本语言LEWA Application Markup Language for MORE (LEWA MORE引擎应用标记语言) MORE渲染引擎Markup Oriented Rendering Engine (基于标记语言的渲染引擎) 概述最初用于百变锁屏,使用xml用特定的语法描述锁屏界面。后来不断增强功能,逐步演化成一套接近通用的界面描述语言和图形渲染引擎,在一定需求下可用于开发风格多变的用户界面。可方便地通过更换皮肤改变界面风格、动画甚至交互方式。 LAML语言和Android的界面描述xml 类似. 所不同的是Android描述的是静态界面,对界面元素的更改依赖java代码。LAML描述的是静态界面+动态属性,UI在时间线上按一定的帧率不断刷新,UI显示根据元素属性的变量表达式的计算结果实时更新。LAML语言和运行时引擎已经从锁屏中独立出来作为LEWA内置的通用框架,除了显示时间日期等,还支持查询标准Content Provider来获取各种信息如天气。显示图片文本等各种元素,各种动画,滑动点击等界面交互控件,适于实现展示信息或有简单交互操作的界面。比如锁屏、动态图标。 框架支持动态帧率,不必按照固定帧率不停渲染,在没有动画和更新的时侯停止渲染,此时仅占用极少资源,对于缓慢变化的动画使用低帧率渲染,高动态的动画开始后立即调整到高帧率全速渲染。全速渲染时全屏帧率基本可以达到60帧。合理使用可以既炫酷又不费电。LAML在百变锁屏中的应用百变锁屏在主题包里的lockscreen/advance目录下,manifest.xml文件是描述脚本 Lockscreen frameRate= displayDesktop= showSysWallpaper= screenWidth=720 Image /Image /Unlocker/Unlocker/Time/DateTime/… Text//Lockscreen frameRate:指定帧率,如果动画缓慢,可以指定小一点的值,省电。默认为30。displayDesktop: 默认为false,透视到桌面功能,如果没有锁屏壁纸或者锁屏壁纸可以被移开或透明时可以看到桌面launcher或者是锁屏前的应用程序。可以完美实现WP7,Meego,阿里云等的解锁界面。showSysWallpaper: 默认为false,是否在锁屏界面显示桌面壁纸。开启后如果没有指定锁屏壁纸Wallpaper/,会将桌面壁纸作为锁屏的壁纸。screenWidth:设定屏幕宽度标准。如果指定为720,锁屏中所有元素的位置都按720p的布局编写,480p的手机会自动进行缩放。LAML在百变壁纸及动态图标中的应用动态图标动态图标在主题包icons\fancy_icons\目录下,每个动态图标是一个文件夹,文件夹的名字是对应的app包名。例如日历的动态图标是一个叫com.android.calendar的文件夹,里面包含manifest.xml描述文件 Icon version=1 frameRate= width=136 height=136 screenWidth=720 useVariableUpdater= hideApplicationMessage=Var/Image/Text/DateTime/…/Icon hideApplicationMessage: 默认false,屏蔽右上角的通知标志。 useVariableUpdater: 指定需要哪些系统变量,目前包括电量和时间,而且可以指定时间的更新周期,如果时间小工具每秒更新一次,需要指定更新周期为1秒,否则默认会每分钟更新一 次。如果小工具或动态图标只显示日期,则每天更新一次,可以指定更新周期为1天。尽量选择较长的更新周期,以节约系统资源。 目前支持的tag: Battery, DateTime.Day, DateTime.Hour,DateTime.Minute,DateTime.Second 如果某个小工具不需要电量或时间变量,则需要使用useVariableUpdater=none,指定不做时间变量等更新。 如果某个小工具显示系统电量并且显示根据时间每小时更换背景图片: useVariableUpdater=Battery,DateTime.Hour 如果需要每秒进行多次刷新,可以直接使用frameRate 壁纸元素Wallpaper元素引用系统设置的壁纸,除了不能指定图片源外其他和Image元素相同,可以有动画和其他属性控制。如果没有此元素则不显示壁纸。可以有多个。 例子: Wallpaper/ 变量Var变量 Var name= expression= type= const=

文档评论(0)

1亿VIP精品文档

相关文档