J2ME-lecture03-高级用户界面的设计.ppt

  1. 1、本文档共138页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
J2ME设计及应用 Fall 2011 第三讲 高层用户界面设计 3.1用户界面概述 一、J2ME用户界面的特点 图形驱动效率高 界面结构简单 与传统界面风格一致 智能设计 二、用户界面的分类 在javax.microedition.lcdui包中的界面类,分为: 高层用户界面类:Screen类 低层用户界面类:Canvas类和Graphic类。 高层用户界面的特点: 封装了一些基本界面控件; 主要应用于业务处理的应用程序; 完成较高层次的抽象,移植性好; 无需关心各种界面控件的颜色、字体和外观; 滚动、翻页等交互都由界面控件完成,无需设计者关心。 低层用户界面的特点: 允许设计者在屏幕上较准确地绘制图形; 主要用于游戏界面的设计; 抽象较少,不能保证程序可以在不同的硬件设备上运行,也不能保证硬件设备的运行结果相同,可移植性差; 可以进行细致的布局,绘制每个像素点、接受较低层的事件、直接获得用户的按键消息; 可以设计复杂的用户交互。 三、lcdui包结构(主要类的类图解)(Liquid?Crystal Display User Interface,液晶显示用户界面) 3.2 屏幕交互类 一、管理MID屏幕——Display类 Display是J2ME应用程序中的屏幕管理类,它负责将各个界面显示内容映射到实际硬件设备,相当于一个逻辑屏幕。 每个MIDlet有且只有一个Display类的实例。可以在MIDlet的构造方法中通过静态方法static Display getDisplay(MIDlet m)获取当前MIDlet的屏幕对象。 在同一时刻,只能有唯一一个Screen 或Canvas 类的子类显示在屏幕上,可以调用Display 的 setCurrent(Displayable nextdisplayable ) 的方法来将前一个画面替换掉,并且必须自行将前一个画面的状态保留起来,并自己控制整个程序画面的切换。 在MIDlet从暂停态转换为激活态需调用startApp方法,此时调用setCurrent方法更新当前激活的MIDlet屏幕;从激活态到暂停态的转换调用setCurrent方法,隐藏当前暂停的MIDlet屏幕。 可以调用getCurrent方法获取当前MIDlet屏幕。 二、屏幕对象——Displayable类 Displayable是抽象类,不能直接产生它的实例,只能产生子类的实例。 如果应用程序在后台运行, Displayable对象也可能在后台运行,此时需调用isShown方法判断Displayable对象是否在屏幕可见,若可见,方能调用setCurrent方法。 Ticker(滚动条)是运行在Displayable对象上的一个滚动条,他继承自Displayable类,与其他控件是并列关系,但其他控件可使用setTicker方法进行设置。 Display类和Displayable类 Displayable类是可以在屏幕上显示的组件。Displayable 是所有(高级界面中)可以显示在屏幕上的类的父接口,所有继承它的类都可以显示在屏幕上。 Dispaly类代表屏幕, 一般用getDisplay 方法取得屏幕,然后用setCurrent方法把Displayable的对象显示在屏幕上。 三、命令按钮——Command类 Command类产生的实例表示一个命令按钮控件,用于提供给用户执行某个特别命令的接口,完成用户与程序的交互。 构造方法需要提供标签、类型和优先级三个参数。数值越小优先级越高,0代表优先级最高。JAM根据优先级处理命令冲突。 例: ExitCommend=new Commend(“退出”,Command.EXIT,1); 一旦类的实例构造完成,不能再对标签、类型和优先级进行修改,但可以调用方法getLable、getCommandType和getPriority获取对应参数值。 事件(Events) MIDlet是基于事件的应用程序。 MIDlet中执行的所有程序都是为了响应应用程序发送给MIDlet的事件被调用的; 事件的分类: 低层事件(low-level event) — 用来处理设备事件 按键事件、探针事件 高层事件(high-level event) —用来处理应用中的相关事件 命令(Command)事件、组件(Item)状态变化事件 高层事件-- Command事件 Command事件 CommandListener接口 CommandListener对事件的处理方法: void commandAction(Command c, Displayable d); 用来处理命令事件,其两个参数: c--命令对象参数,是当前所触发的命令对象的引用; d--显示对象,是当前命令对象

文档评论(0)

ygxt89 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档