默认情况下,Android上的可点击视图将在内容描述后以大声朗读的使用提示呈现(如果启用TalkBack并且用户专注于该视图):
“双击激活”
我能改变这一点,让它读出一些不那么抽象、更具体的东西吗?比如:
“双击播放视频”
是的,这是绝对可能的!
如果您有自定义视图,可以覆盖< code > onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo)方法,并添加一个具有< code>ACTION_CLICK ID的操作来覆盖标签:
@Override
public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info) {
super.onInitializeAccessibilityNodeInfo(info);
info.addAction(
new AccessibilityNodeInfo.AccessibilityAction(
AccessibilityNodeInfo.ACTION_CLICK,
"play video"
)
);
}
如果该视图具有单击侦听器,则通过添加此新的<code>操作,您将覆盖默认标签,因此对讲将改为“双击到”。
这仅在API 21上可用——如果您想要在一个较低的API版本上工作,或者想要在一个非定制视图上设置一个定制的使用提示呢?您可以使用< code>ViewCompat和< code > AccessibilityDelegateCompat !
这非常相似——您可以在您扩展的自定义AccessibilityDelegate中重写等效的方法:
public static class PlayVideoAccessibilityDelegate extends AccessibilityDelegateCompat {
@Override
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
super.onInitializeAccessibilityNodeInfo(host, info);
info.addAction(
new AccessibilityNodeInfoCompat.AccessibilityActionCompat(
AccessibilityNodeInfoCompat.ACTION_CLICK,
"play video"
)
);
}
}
然后要使用它,您可以使用ViewCompat
设置委托:
ViewCompat.setAccessibilityDelegate(playButton, new PlayVideoAccessibilityDelegate());
Novoda有一个实用程序库来帮助Android上的可访问性。这包括一些帮助设置使用提示的工具:
UsageHintsAccessibilityDelegate delegate = new UsageHintsAccessibilityDelegate(resources);
delegate.setClickLabel("play video");
ViewCompat.setAccesibilityDelegate(playButton, delegate);
我写了一篇博客,概述了accessibilitools(我也是这个库的贡献者)。
我正在设计一个Gridview,其中每个项目都有一个TextView和ImageView。我试图找到关于如何使ImageView可点击以及GridView项目本身(两者都会触发不同的方法())的教程(逐步更新和清晰的教程)。 这就是我目前掌握的: Activity.java GV适配器.java 结果: 当Item1(Textview)被点击时,它应该点击整个Item并触发GridView的OnI
问题内容: 我想使列表视图中的所有列表项都打开到一个新页面中,因此每个列表视图项都打开到一个我可以使用的新黑色页面上。我根本不知道该如何实现。我已经连续搜索了几个小时,找不到解决方案的答案。如果有人可以显示和/或解释如何执行此操作而不是提供链接,将不胜感激,但是两者之一都很有帮助。 到目前为止,这是我的代码: 这是在我的string.xml中 这是在我的activity_main.xml中。 我应
嘿,对不起,我的英语不好。。。 我的 ListFragment 中有一个 ListView,带有自定义适配器。在我的布局中,我有一个按钮。按钮和整个项目/行是可单击的。我用为ImageButton实现了这一点。正如您在 getView() 方法中看到的,我捕获了一个单击操作。 这是我的布局: 现在我想知道你是否可以在不选择整个视图的情况下点击按钮,但仍然注意到背景上的点击(我知道我在列表视图中的位
问题内容: 我现在正在寻找几天以寻求ListView中可点击项的解决方案。 首先,我遇到了这个问题: **developer.android.com/resources/articles/touch-mode.html** ,发现它没有“正常”的onListItemClick()行为。 然后我遇到了 这段代码 :http : //www.androidsnippets.org/snippets/1
我要做的是创建一种播放列表,只使用html5和vanilla javascript(不使用jquery)。相同的短视频一直循环直到你点击其中一个箭头,然后一行中的下一个(或上一个)视频被加载到相同的视频元素中。 以下是我的资料: HTML JavaScript 但是,使用这段代码,单击任何一个箭头似乎都没有任何作用。但我不确定我做错了什么。我首先想到的是if测试失败了,所以它只是重新加载了相同的视
主要内容:基本语法,修改视图内容,修改视图名称修改视图是指修改 MySQL 数据库中存在的视图,当基本表的某些字段发生变化时,可以通过修改视图来保持与基本表的一致性。 基本语法 可以使用 ALTER VIEW 语句来对已有的视图进行修改。 语法格式如下: ALTER VIEW <视图名> AS <SELECT语句> 语法说明如下: :指定视图的名称。该名称在数据库中必须是唯一的,不能与其他表或视图同名。 :指定创建视图的 SELECT 语句,