首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >颤动/ Dart中的AcessibilityEvent

颤动/ Dart中的AcessibilityEvent
EN

Stack Overflow用户
提问于 2019-01-22 08:56:33
回答 3查看 769关注 0票数 0

我花了3周时间学习如何在dart中使用可访问性事件,有没有人有什么发现?我在文档中没有找到任何东西

EN

回答 3

Stack Overflow用户

发布于 2019-01-22 11:22:36

可访问性信息可以通过Semantics小部件提供。Material和库比蒂诺库中的大多数小部件都已经提供了相关的语义,比如MaterialButton标识为一个按钮等等。只有在使用原始布局或绘制器创建自己的小部件时,才需要使用Semantics小部件。

例如,假设您想制作自己的按钮,并从一个Text小部件和一个手势检测器开始。

代码语言:javascript
复制
Widget build(_) {
  return Container(
    child: GestureDetector(
      onTap: () { ... }
      child: Text('MY BUTTON'),
    )
  );
}

其中已经包含了来自TextGestureDetector小部件的一些语义信息。在运行应用程序时,如果启用了TalkBack或VoiceOver来打印当前语义树,则可以按S (大写"S")。

代码语言:javascript
复制
[   +6 ms] I/flutter ( 6511): SemanticsNode#0
[        ] I/flutter ( 6511):  │ Rect.fromLTRB(0.0, 0.0, 1080.0, 1794.0)
[        ] I/flutter ( 6511):  │
[        ] I/flutter ( 6511):  └─SemanticsNode#1
[        ] I/flutter ( 6511):      Rect.fromLTRB(0.0, 0.0, 79.0, 16.0) with transform
[        ] I/flutter ( 6511):        [2.625,0.0,0.0,436.3125; 0.0,2.625,0.0,876.0; 0.0,0.0,1.0,0.0;
[        ] I/flutter ( 6511):        0.0,0.0,0.0,1.0]
[        ] I/flutter ( 6511):      actions: tap
[        ] I/flutter ( 6511):      label: "MY BUTTON"
[        ] I/flutter ( 6511):      textDirection: ltr

在本例中,要明确地将其标识为一个按钮,您可以用一个提供button: truecontainer: trueSemantics小部件包装您的小部件。

代码语言:javascript
复制
Widget build(_) {
  return Semantics(
    container: true,
    button: true,
    child: Container(
      child: GestureDetector(
        onTap: () { ... }
        child: Text('MY BUTTON'),
      )
    )
  );
}
票数 0
EN

Stack Overflow用户

发布于 2019-01-24 02:13:44

不,我指的是可访问性事件,使我的gizmo自动化,并在将来使teamviewer on flutter

发送点击,等。

票数 0
EN

Stack Overflow用户

发布于 2020-03-31 08:45:09

请查看此链接。它在flutter中引入了可访问性桥,可以用来实现你想要的东西。

https://api.flutter.dev/javadoc/io/flutter/view/AccessibilityBridge.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54299818

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档