代码之家  ›  专栏  ›  技术社区  ›  coder.john

如何让Flitter应用程序支持电视设备?

  •  3
  • coder.john  · 技术社区  · 8 年前

    电视设备不支持触摸操作,用户必须使用遥控器。我们需要通过按左、上、右、下方向键来移动焦点,当目标小部件获得焦点时,我们将按OK按钮来响应各种按键事件。但我找不到任何颤振界面来解决这种相互作用,谁能帮我?

    2 回复  |  直到 8 年前
        1
  •  1
  •   Günter Zöchbauer    8 年前

    有用于此的系统通道。 我自己还没有试过,但看起来这应该可以满足您的需要:

    DartDocs - SystemChannels.keyEvent

    用于键盘事件的JSON基本消息通道。

    [DartDocs-SystemChannels.textInput[( https://www.dartdocs.org/documentation/flutter/0.0.41-dev/services/SystemChannels/textInput-constant.html )

    用于处理文本输入的JSON MethodChannel。

    此通道公开用于与交互的系统文本输入控件 IMEs(输入法编辑器,例如屏幕键盘)。有 一个控件,并且在任何时候都可以有一个活动事务。 事务由整数表示。新交易包括 由TextInput启动。setClient。发送的消息假定为 用于当前事务(由设置的最后一个“客户端 text输入。setClient)。从shell接收的消息指定 应用它们的事务,以便过时的消息 可以忽略引用过去的事务。

    后者用于 https://github.com/flutter/flutter/blob/4389f07024a4c69f7223401abd4d0ab3ecc45698/packages/flutter/lib/src/services/text_input.dart

    已知的物理键盘问题可能会导致此用例无法工作

        2
  •  0
  •   Rohan Patil    5 年前

    是的,颤振还不支持D-pad导航。但是,我有一台Android智能电视,如果我连接了蓝牙鼠标,我就可以在电视上导航、滑动、点击我的Flitter应用程序。