Flash Lite 2.x 入门 |
|
|
|
| 教程:创建 Flash Lite 应用程序 > 创建应用程序 > 创建主屏幕的菜单 | |||
在本部分中,您将创建应用程序主屏幕的菜单。该菜单包含三个选项:"Specials"、"View Video"和"Reservations"。
将该按钮放在介绍餐馆的文本字段(已就位)的下方。
应用程序的舞台看上去应该与下面的图例类似:

stop();
_focusrect = false;
fscommand2("SetSoftKeys", "Set Location", "Exit");
fscommand2("SetQuality", "high");
fscommand2("Fullscreen", "true");
这段代码执行以下操作:
当 Flash Lite 处于全屏模式时,将看不到您在 SetSoftKeys 命令中指定的标签。因此,您必须将自定义软键标签添加至舞台。
// 设置当应用程序启动时以及在从
// 其它屏幕返回主屏幕时的
// 初始焦点。
if (selectedItem == null) {
Selection.setFocus (specials_btn);
} else {
Selection.setFocus (selectedItem);
}
// 为每个菜单按钮指定 onPress 事件处理函数,
// 并且为所选按钮设置 selectedItem 变量
// 对象:
specials_btn.onPress = function () {
gotoAndStop ("specials");
selectedItem = this;
};
video_btn.onPress = function () {
gotoAndStop ("video");
selectedItem = this;
};
reservations_btn.onPress = function () {
if (location_so.data.phoneNumber == undefined) {
// 用户尚未指定位置,所以
// 请转到"set location"屏幕:
gotoAndStop ("options");
}
else {
// 拨打共享对象中的号码:
var phoneNum = location_so.data.phoneNumber;
getURL ("tel:" + phoneNum);
}
selectedItem = this;
};
指定给名为 specials_btn 和 video_btn 的按钮的 onPress 事件处理函数会将播放头移到标签分别为"specials"和"video"的帧。您将在后面的教程中为那些部分创建内容(请参阅创建特色餐屏幕和创建 Video 屏幕)。
当用户选择"Reservations"选项时,onPress 处理函数会拨打在 location_so 共享对象中指定的电话号码。(在此过程的后面,您将创建代码来创建该共享对象。)如果用户尚未指定电话订餐的位置,应用程序会将播放头移到标签为"options"的帧,用户可在该帧选择首选的订餐位置。
Key.removeListener(myListener);
var myListener:Object = new Object();
myListener.onKeyDown = function() {
var keyCode = Key.getCode();
if (keyCode == ExtendedKey.SOFT1) {
// 处理左软键事件:
gotoAndStop("options");
} else if (keyCode == ExtendedKey.SOFT2) {
// 处理右软键事件:
fscommand2("Quit");
}
};
Key.addListener(myListener);
此代码使用一个按键侦听器对象来处理右软键事件和左软键事件。当用户按左软键时,播放头会移到标签为"options"的帧,用户按右软键时会关闭应用程序。
有关使用事件侦听器的详细信息,请参阅《开发 Flash Lite 2.x 应用程序》中的"使用按键侦听器处理按键事件"。
// 定义 Shared Object 侦听器函数:
function so_listener (the_so:SharedObject) {
if (the_so.getSize () == 0) {
// 共享对象不存在,所以用户
// 尚未设置首选项。
}
SharedObject.removeListener ("location");
}
// 创建共享对象:
location_so = SharedObject.getLocal ("location");
// 添加 SharedObject 侦听器对象:
SharedObject.addListener ("location", this, "so_listener");
|
|
|
|