使用软键(仅限于 Flash Professional)

要在 Flash Lite 应用程序中使用软键,必须首先调用 SetSoftKeys 命令。之后,当用户按左软键时,Flash Lite 会生成一个 ExtendedKey.SOFT1 事件;当用户按右软键时,会生成一个 ExtendedKey.SOFT2 事件。您需要编写响应这些事件并采取所需动作的 ActionScript 事件处理函数代码。

SetSoftKeys 命令采用两个参数,这两个参数分别为左软键和右软键指定标签。当应用程序"不"在全屏模式下运行时,会显示这两个标签。对于在全屏模式下运行的应用程序,您指定的标签不可见。因此,您必须创建自己的标签,并将其放置在舞台上软键所在的位置。

例如,考虑下面的 SetSoftKeys 命令调用:

fscommand2("SetSoftKeys", "Options", "Exit");

下面的示例显示了在以常规(非全屏)模式在实际设备上运行的应用程序中使用此命令的结果:



如果您启用全屏模式,即如果您调用 fscommand("fullscreen", true),则您作为参数指定给 SetSoftKeys 命令的标签不可见。因此,在全屏模式应用程序中,您必须创建自己的软键标签,如下面的示例所示:



有关 SetSoftKeys 命令的更多信息,请参见"Flash Lite 2.x ActionScript 语言参考"中的 fscommand2 function 条目。

要在应用程序中使用软键,请执行以下操作:

  1. 使用在"Flash Lite 2.x 入门"的创建 Flash Lite 文档模板(仅限 Flash Professional)中创建的 Flash Lite 2.0 通用设备模板创建一个新文档,并将其另存为 softkey.fla。
  2. 使用"文本"工具创建一个名为 Left 的静态文本字段,并将其放在舞台的左下角,设备上的左软键上方。
  3. 创建另一个名为 Right 的静态文本字段,并将其放在舞台的右下角,设备上的右软键上方。
  4. 使用"文本"工具创建一个动态文本字段,并将其放在舞台中间。

    文档的舞台看上去应该类似于下面的示例:



  5. 在动态文本字段仍处于选中状态的情况下,在属性检查器中的"实例名称"文本框中键入"status"。
  6. 打开"动作"面板("窗口">"动作"),然后在时间轴中,选择图层 1 上的第 1 帧。
  7. 在"动作"面板中,键入以下代码:
    fscommand2("SetSoftKeys", "Left", "Right");
    fscommand2("FullScreen", true);
    
  8. 通过在"动作"面板中输入以下代码来创建并注册对象,以对按键事件做出响应(请参见使用按键侦听器来处理按键事件(仅限于 Flash Professional)):
    var myListener:Object = new Object();
    myListener.onKeyDown = function() {
        if (Key.getCode() == ExtendedKey.SOFT1) {
            // 处理左软键按键事件。
            status.text = "You pressed the Left soft key.";
    
        } else if (Key.getCode() == ExtendedKey.SOFT2) {
            // 处理右软键按键事件。
            status.text = "You pressed the Right soft key.";
        }
    };
    Key.addListener(myListener);
    
  9. 选择"控制">"测试影片"以在模拟器中测试该应用程序。

    要测试该应用程序,请用鼠标单击模拟器上的左软键和右软键,或按键盘上的 Page Up 和 Page Down 键。