1

我正在使用最新的 SDK 为三星智能电视开发应用程序。

我有一个基于场景的应用程序,现在想使用 TV 移除来控制它。

天真的方法,使用 jQuerys.select()使光标进入输入字段之一似乎完全禁用了遥控器,错误是

身体当前未激活...跳过!: 输入

据我所知,这与具有 onkeydown-Handler 的 body-element 有关。

这导致我基本上需要手动管理 focussed / blur 状态,不能使用 CSS 选择器,例如 :active、:focussed,这不是很整洁。

任何帮助/文档链接/等将不胜感激。

我正在使用基于 VMWare 的模拟器在 Mac OS 下开发应用程序。

4

2 回答 2

2

我们一直在使用我们的应用程序为场景中的活动元素分配一个类。然后使用 javascript,您可以根据哪些页面元素处于活动状态添加侦听器。

因此,例如,当应用程序加载时,您可以为 HTML 页面上的第一个按钮分配一个活动类。然后,您可以为遥控器上的按钮设置监听器,以便向下按钮将活动状态更改为场景中的下一个按钮。

//key press listener for remote
SceneScene1.prototype.handleKeyDown = function (keyCode) {
    //find the key code you are looking for
    switch (keyCode) {
        case sf.key.LEFT:
        //code for left keypress
        break;

    case sf.key.RIGHT:
        //code for left keypress
        break;

    case sf.key.UP:
            //code for up keypress
        break;

    case sf.key.DOWN:
        //code for down keypress
            if ($('#button1').hasClass('active')) {
                $('#button1').removeClass('active');
                $('#button2').addClass('active');
            }
        break;

    case sf.key.ENTER:
            //code for enter keypress
        break;
    }
}

你是对的,它看起来并不那么干净,但是当你与遥控器连接时,它几乎和它一样好。您必须指定“聚焦”元素并将它们用作远程指令的上下文。

于 2013-02-13T14:34:02.077 回答
0

如果您发现它更有益,您可以尝试切换类吗?

于 2013-05-14T15:41:17.027 回答