《Java 手机/PDA 程序设计入门》读书笔记2

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

LCDUI(Limited Configuration Device UI)

不用AWT/SWING的原因:移动设备CPU慢,内存小;没有鼠标,只是触控屏幕和简单的按钮;屏幕小,不需要重叠窗口;消息处理机制负荷太重。

LCDUI高级API(Screen子类)具有移植性,对画面的掌控程度较低,组件的属性由系统来决定。

LCDUI低级API(使用Canvas的子类和Graphics类)对整个手机的画面具有完全控制权。

两者可以在同一个MIDLet里混合使用。

Displayable抽象类:javax.microedition.lcdui.Displayable的子类可以分成两大类:

Canvas和Screen。Canvas属于低级图形用户界面组件,Screen属于高级图形用户界面组件。

在同一时间,只能由唯一一个Canvas或Screen类的子类出现在屏幕上。

setCurrent()被调用时,前一画面就被取代,所以要自行保存当前画面。

事件处理:

在MIDP中,只要底层侦测到有事件发生,系统就会调用固定接口中的特定方法(回调函数),并传给它特定的参数。

和用户界面相关的回调函数:

1 经由abstract command (javax.microedition.lcdui.Command)

2 使用低级API时,如果机器上的按钮被按下或是触控屏幕被触动时,就调用对应的事件,即使用javax.microedition.lcdui.Canvas类。

3 屏幕重绘时,产生重绘事件,此时Canvas类的paint()被调用,并传入一个Graphics对象的引用。

4 调用Display类的callSerially()方法时,传入一个实现Runnable接口的类,其中的run()会被调用。

Command类

Displayable对象定义了addCommand()/removeCommand()方法

Command类三个参数的构造函数:Command c1=new Command("Back_1",Command.BACK,1);

Command类四个参数的构造函数:Command c1=new Command(短命令,长命令,类型,优先权);

取相应的值:getLabel() getLongLabel() getCommandType() getPriority()

八种类型:

BACK CANCEL EXIT HELP ITEM OK SCREEN STOP

并不会因为设定成某一种类就具有该类型“名称上”的功能。

CommandListener:事件处理接口

委托模型(Delegation Model)

setCommandListener()注册事件处理函数。

commandAction()被调用,当注册事件产生时。

Ticker类

跑马灯。Displayable子类都可以加入Ticker。setTicker()/getTicker()。

标题 setTitle()/getTitle()。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航