首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

让你的应用完美适配平板

Pad 和手机完完全全是两码事,屏幕大小差异太大不说,而且 Pad 的常态是横屏,但市面上大多数应用都限制死了竖屏操作,导致应用在 Pad 上根本无法使用或者使用效果特别差!...activity(例如,在列表-详情模式下),以便充分利用大屏设备的额外显示区域,并且只需对应用进行少量重构,甚至无需重构。...普通按键比如聊天应用使用 Enter 键发送消息,媒体应用使用空格键开始和停止播放,游戏使用 W、A、S 和 D 键控制移动,等等,这种情况下需要重写 onKeyUp 方法:override fun onKeyUp...在这种情况下,系统会通过报告 ACTION_CANCEL 事件来取消触摸,这个时候应用应撤消由这些触摸引起的所有交互。...对于自定义视图来说尤其如此。

1.9K50

如何测试你做的项目的可访问性

需要手动检查的项目 自动化检测的 cases 覆盖不全可访问性的所有特性,需要我们手动测试。包括:键盘焦点的顺序是否合理、可交互元素是否易于理解、是否有键盘陷阱、自定义组件是否也易于理解和使用等等。...应用到的项 ? 自动化工具只能检测可访问性问题的子集,因此手工测试必不可少。 二、手动测试的方法和工具 关于手动测试,重点和大家分享三点:键盘的可访问性、屏幕阅读器、缩放功能。...比如我想告诉屏幕阅读器用户,页面有搜索区域、筛选区域、列表区域和翻页区域 按“页面结构”导航时,有混入不恰当的信息。比如“导航”,它其实是按钮式的翻页区域 按“表单空间”导航时,不够全面。...键盘可访问性和页面缩放,功能比较直观,理解起来也没有歧义,这部分完全可以通过 Web 开发人员的自测满足,测试量也不大。...下一步 本文里其实已经暴露出了几个可访问性问题了,诸如已选条件的bug、自定义下拉框/弹层的键盘可访问性、屏幕阅读器导航信息不精准。

1.8K10
您找到你想要的搜索结果了吗?
是的
没有找到

简单了解下无障碍设计模式

使用颜色、形状、文本和动效来传达正在发生的事情 访问你的应用:包含适当的内容标签,以适应那些使用纯文字版本的用户 具体的 支持特定平台的辅助技术,就像支持触摸键盘和鼠标的输入方式一样。...自动朗读文本 阅读关于在活跃区域放置文本的信息。 样式 布局 Material Design 的触摸目标指南使那些无法看到屏幕、或者运动不灵活的用户能够点击应用中的元素。...其他设计的注意事项: 使用可缩放文字和一个宽敞的布局,来适应那些可能开启大文字、颜色矫正、放大或其他无障碍功能的用户 键盘/鼠标界面可以仅通过键盘就能访问所有任务和所有悬浮信息 触摸界面应允许屏幕阅读器和其他无障碍设备读取界面中的所有内容...有时,可以使用无障碍文本覆盖屏幕中的标签,来为用户提供更多信息。 可见和不可见的文本都应该是有用的描述性的词,并且都有独自的含义,因为有些用户会使用页面中的标题和链接进行导航。...例如,Android 的 “双击以选择” 功能提示用户在选择一个项目时需要点击两次。Android 的 TalkBack 也会提醒和元素相关联的任何自定义操作。

4.7K40

学界 | 谷歌输入法背后的机器智能:思你所思,想你所想!

为了改变这一点,最近谷歌团队为Gboard for Android提供了许多改进,致力于创建一个智能机制的 键盘,能够为用户以任何选择的语言提供建议和纠正错误,从而实现更快更高质量的输入。...事实上,移动键盘触摸输入转换为文本的方式类似于语音识别系统将语音输入转换为文本的方式,雷锋网了解到,该团队将利用语音识别的经验来实现触摸输入。...团队首先创建了一个强大的空间模型,将原始触摸点的模糊序列映射到键盘上的按键,就像用声学模型将声音定位到语音单元的顺序一样。...智能键盘需要能够解决这些错误,并且可以快速准确地预测正确的单词。 据雷锋网了解,该团队为Gboard构建了一个空间模型,在字符级别处理这些错误,将屏幕上的触摸点映射到实际按键。 ?...用户有时会跳过空格键。 为了说明这一点,转换器中的单词之间的过渡空格键是可选的。 ε和空格后弧允许存在多个单词。 概率n元传感器用于表示键盘的语言模型。

1.1K70

谷歌输入法背后的机器智能

为了改变这一点,最近谷歌团队为Gboard for Android提供了许多改进,致力于创建一个智能机制的 键盘,能够为用户以任何选择的语言提供建议和纠正错误,从而实现更快更高质量的输入。...事实上,移动键盘触摸输入转换为文本的方式类似于语音识别系统将语音输入转换为文本的方式,雷锋网了解到,该团队将利用语音识别的经验来实现触摸输入。...团队首先创建了一个强大的空间模型,将原始触摸点的模糊序列映射到键盘上的按键,就像用声学模型将声音定位到语音单元的顺序一样。...智能键盘需要能够解决这些错误,并且可以快速准确地预测正确的单词。 据雷锋网了解,该团队为Gboard构建了一个空间模型,用于在字符级别处理这些错误,将屏幕上的触摸点映射到实际按键。 ?...用户有时会跳过空格键。 为了说明这一点,转换器中的单词之间的过渡空格键是可选的。 ε和空格后弧允许存在多个单词。 概率n元传感器用于表示键盘的语言模型。

1.3K70

挥别web移动端开发差异和经典坑

touch: 使用具有回弹效果的滚动, 当手指从触摸屏上移开,内容会继续保持一段时间的滚动效果。继续滚动的速度和持续的时间和滚动手势的强烈程度成正比。同时也会创建一个新的堆栈上下文。...描述:ios就是当唤起键盘后,整个页面会被键盘压缩,也就是说页面的高度变小,并且所有的 fixed 全部变为了 absolute ,而 android 中唤起键盘覆盖在页面上,不会压缩页面 可以通过监听移动端软键盘弹起...Element.scrollIntoViewIfNeeded(Boolean)方法用来将不在浏览器窗口的可见区域内的元素滚动到浏览器窗口的可见区域。...如果该元素已经在浏览器窗口的可见区域内,则不会发生滚动。...非直接的文字输入(中文输入法)下,进行判断限制,仅在选词后触发input事件 描述:在使用oninput监控输入框内容变化时,我们期望仅在value值变化时,才触发oninput事件,而在中文输入下,选词时的按键也会触发

2.8K20

Flutter完整开发实战详解(二十、 Android PlatformView 和键盘问题)

作为系列文章的第二十篇,本篇将结合官方的技术文档科普 Android 上 PlatformView 的实现逻辑,并且解释为什么在 Android 上 PlatformView 的键盘总是有问题。...VirtualDisplay 会将虚拟显示区域的内容渲染在一个 Surface 上。 ?...2.1.1、解决方法 AndroidView 使用 Flutter Framework 中的点击测试逻辑来检测用户的触摸是否在需要特殊处理的区域内。...类似可见:《Flutter完整开发实战详解(十三、全面深入触摸和滑动原理)》 当触摸成功时会向 Android embedding 发送一条消息,其中包含 touch 事件的详细信息。...2.2.2、 Platforview 中的 WebView 键盘输入 在 Android N 之前的版本上 WebView 输入比较复杂,因为它们具有自己内部的逻辑来创建和设置输入连接,而这些输入连接并没有完全遵循

13.3K20

Android 应用开发】Android 无障碍开发简介 ( Android 无障碍开发辅助技术 | 启用 TalkBack 无障碍功能 | TalkBack 无障碍开发 示例 )

文章目录 一、Android 无障碍开发辅助技术 二、启用 TalkBack 无障碍功能 三、TalkBack 无障碍功能代码示例 官方文档 : Android 无障碍功能概览 一、Android 无障碍开发辅助技术...: 支持特殊手势 , 滑动 , 双击 , 长按等 ; 自定义配置 : 配置自定义选项 , 如音量 , 速度 , 灵敏度等 ; Switch Access : 该技术 帮助 行动不便 的用户更容易地使用...Android 设备 ; 外部开关 : 使用外部 IO 设备 , 如 : 鼠标 , 键盘 等外设操作屏幕 ; 映射扫描 : 外部开关映射到屏幕的不同区域 ; 自定义设置 : 设置自定义配置 ,...如 扫描速度 , 反应时间等 ; Voice Access : 该技术 帮助 不方便使用触摸屏幕 的用户 , 更加轻松的使用 Android 设备 ; 语音命令 : 用户使用语音控制设备 ,...如 : 打开应用 , 滑动屏幕 等 ; 自定义命令 : 自定义常用命令 , 如 : 快捷方式 ; 文本转语音 : 将屏幕中的文本转为语音提示 ; 无障碍模式下 , 使用键盘 , 鼠标 等外设控制焦点 ,

1.9K20

jquery nicescroll 配置参数

scrollabar“隐藏”状态),范围从1到0, 默认为0(隐藏) cursoropacitymax - 改变不透明度非常光标处于活动状态(scrollabar“可见”状态),范围从1到0,默 认值是1(完全不透明...9999 scrollspeed - 滚动速度,默认值为60 mousescrollstep - 高速滚动鼠标滚轮,默认值是40(像素) touchbehavior - 使光标拖动滚动像在台式电脑触摸设备...AUTORESIZE的iframe(默认:true) cursorminheight,设置在像素的最小光标高度(默认值:20) preservenativescrolling,您可以滚动本机可滚动区域用鼠标...您可以添加抵消顶部/左边的轨道位置(默认:false) bouncescroll,使滚动弹跳在内容结尾作为移动像(仅HW ACCELL)(默认:false) spacebarenabled,使向下翻页时,空格键已经按下滚动...可以使用CSS转换为滚动内容(默认:true) enablemousewheel,nicescroll可以管理的鼠标滚轮事件(默认:true) enablekeyboard,nicescroll可以管理键盘事件

4.1K80

移动端必备的H5问题及解决方案

移动端 H5 相关问题汇总: 响应式布局 iOS 滑动不流畅 iOS 上拉边界下拉出现白色空白 页面件放大或缩小不确定性行为 click 点击穿透与延迟 软键盘弹出将页面顶起来、收起回落问题 iPhone...-webkit-overflow-scrolling: touch; /* 当手指从触摸屏上移开,会保持一段时间的滚动 */ -webkit-overflow-scrolling: auto; /* 当手指从触摸屏上移开...五、软键盘将页面顶起来、收起回落问题 表现 Android 手机中,点击 input 框时,键盘弹出,将页面顶起来,导致页面样式错乱。 移开焦点时,键盘收起,键盘区域空白,回落。...导致可视区域变小,布局错乱。 原理与解决方案 软键盘将页面顶起来的解决方案,主要是通过监听页面高度变化,强制恢复成弹出前的高度。...),第一个参数为自定义区域,第二个为备用值。 其中 var() 用法为 var( , ?

4.3K42

iPhone X 适配指南 (官方翻译版)

所有应用程序都应遵循UIKit定义的安全区域和布局边距,这些区域可以根据设备和上下文进行适当的填充。安全区域还可以防止内容覆盖状态栏,导航栏,工具栏和标签栏。 注意状态栏的高度。...不要使用像括号,边框,形状或教学文字等视觉装饰,也要特别注意这些区域。 允许自动隐藏指示灯,以便轻松访问主屏幕。当启用自动隐藏时,如果用户没有触摸屏幕几秒钟,指示灯将熄灭。...同样,请确保您的应用程序在支持Touch ID的设备上引用Face ID。请参阅验证。 不要重复系统提供的键盘功能。...在iPhone X上,即使使用自定义键盘,Emoji / Globe按钮和Dictation按钮也自动显示在键盘的下方。您的应用程序不能影响这些按钮,因此避免在键盘中重复这些按钮造成混乱。...请参阅自定义键盘。 资源 下载Photoshop和Sketch 资源中的 iPhone X UI设计模板。 原文链接

2.5K50

吃透移动端 H5 与 Hybrid|实践踩坑12种问题汇总

键盘将页面顶起来、收起回落问题 表现 Android 手机中,点击 input 框时,键盘弹出,将页面顶起来,导致页面样式错乱。 移开焦点时,键盘收起,键盘区域空白,回落。...导致可视区域变小,布局错乱。 原理与解决方案 软键盘将页面顶起来的解决方案,主要是通过监听页面高度变化,强制恢复成弹出前的高度。...解决方案 设置安全区域,填充危险区域,危险区域不做操作和内容展示。 危险区域指头部不规则区域,底部横条区域,左右触发区域。 ?...),第一个参数为自定义区域,第二个为备用值。 其中 var() 用法为 var( , ?...提供一个判断是否 Android、iOS。

2.1K20

吃透移动端 H5 与 Hybrid|实践踩坑12种问题汇总

键盘将页面顶起来、收起回落问题 表现 Android 手机中,点击 input 框时,键盘弹出,将页面顶起来,导致页面样式错乱。 移开焦点时,键盘收起,键盘区域空白,回落。...导致可视区域变小,布局错乱。 原理与解决方案 软键盘将页面顶起来的解决方案,主要是通过监听页面高度变化,强制恢复成弹出前的高度。...解决方案 设置安全区域,填充危险区域,危险区域不做操作和内容展示。 危险区域指头部不规则区域,底部横条区域,左右触发区域。...),第一个参数为自定义区域,第二个为备用值。 其中 var() 用法为 var( , ?...提供一个判断是否 Android、iOS。

1.2K30

Android 12的行为变更和版本兼容思路

为了保持系统安全性和良好的用户体验,Android 12会阻止应用程序在覆盖层以不安全的方式遮盖应用程序的情况下使用触摸事件。...完全透明的窗口。这 alpha窗口属性为0.0。 足够透明的系统警报窗口。当组合的不透明度小于或等于系统对触摸的最大遮盖不透明度时,系统认为一组系统警报窗口是足够透明的。...自定义通知更改 Android 12会更改完全自定义通知的外观和行为。以前,自定义通知能够使用整个通知区域并提供自己的布局和样式。...对于定位到Android 12的应用,带有自定义内容视图的通知将不再使用完整的通知区域;而是,系统应用标准模板。...如果您的应用使用的是完全自定义的通知,建议您尽快使用新模板进行测试。 启用自定义通知更改: 改变你的应用程序的targetSdkVersion,以S使新的行为。 重新编译。

4.5K10

实现更安全、高扩展的自定义键盘 非UIButton

自定义键盘的原因 自定义键盘的封装网上的例子比比皆是,有的封装的非常完美,直接pod 集成到项目中便可以简单的使用,可是为什么我还要自定义一个呢?...,官方的键盘在安全性方面是相当高的 自定义键盘 参考官方的键盘,写出了自己的自定义键盘,也是底层图片实现,监控触摸事件 没有安全只有更安全,这里自定义键盘只是相对于 UIButton 堆积起来的键盘,...删除事件已经集成完毕 回调事件已经集成完毕 触摸事件已经封装完善,在触摸了每个字母时都有回调 每个按键的点击事件已经完成,只需在事件中作出不同的处理即可 未完成: 键盘上字母实现随机 简化调用 使用介绍.../** 本库主要是为了实现一个自定义键盘 所有的按键均是图片组成,最大程度上避免了恶意监控控件(UIButton,UILabel)等,防止获取键盘内容 所有的事件均通过手指(触摸)的移动,来控制按键变化...****/ /// 含有小数点的键盘 case decimalPadNum /// 数字和字母键盘 case numAndLetter } 因为时间原因,使用

76620

提示大屏幕和折叠屏: 让您的 Android 游戏登上更大的舞台

比如玩家可能在没有触摸屏的 Chromebook 上用键盘玩游戏,或者打算插上鼠标来玩自己最喜欢的第一人称射击游戏,这些时候如果玩家发现自己期待的操作方式没有被游戏支持,失望之情也就不难理解了。...例如检测键盘的连接: 然后,您可以在启动时或在配置更改时查询 InputManager,并根据触摸屏或者键盘的可用与否来切换控制方案。...另外,当从触摸控制方案切换成键盘控制方案时,即使 InputManager 说键盘可用,您也需要进一步确保键盘真的可用 (比如在画面上提示用户 "按任意键继续")。.../ 方向键移动 菜单导航 Enter 键输入 Tab 键切换 (依游戏所需) 上下翻页键功能 返回键 自定义键位映射 还有,别忘记使用鼠标的玩家——特别是在第一人称射击游戏或第三人称游戏里。...如果您的游戏在渲染时会覆盖到凹口区域,可以使用 WindowInsets.getDisplayCutout() 来获得 DisplayCutout 对象。

1.4K30

大屏幕和折叠屏: 让您的 Android 游戏登上更大的舞台

比如玩家可能在没有触摸屏的 Chromebook 上用键盘玩游戏,或者打算插上鼠标来玩自己最喜欢的第一人称射击游戏,这些时候如果玩家发现自己期待的操作方式没有被游戏支持,失望之情也就不难理解了。...例如检测键盘的连接: 然后,您可以在启动时或在配置更改时查询 InputManager,并根据触摸屏或者键盘的可用与否来切换控制方案。...另外,当从触摸控制方案切换成键盘控制方案时,即使 InputManager 说键盘可用,您也需要进一步确保键盘真的可用 (比如在画面上提示用户 "按任意键继续")。...如果您的游戏在渲染时会覆盖到凹口区域,可以使用 WindowInsets.getDisplayCutout() 来获得 DisplayCutout 对象。...MODE_SHORT_EDGES: 不论横竖屏模式,内容都会在凹口区域内渲染。 MODE_NEVER: 内容永远不会在凹口区域内渲染。

1.3K20

12个关于移动 H5 开发的采坑问题汇总

键盘将页面顶起来、收起回落问题 表现 Android 手机中,点击 input 框时,键盘弹出,将页面顶起来,导致页面样式错乱。 移开焦点时,键盘收起,键盘区域空白,回落。...导致可视区域变小,布局错乱。 原理与解决方案 软键盘将页面顶起来的解决方案,主要是通过监听页面高度变化,强制恢复成弹出前的高度。...解决方案 设置安全区域,填充危险区域,危险区域不做操作和内容展示。 危险区域指头部不规则区域,底部横条区域,左右触发区域。...),第一个参数为自定义区域,第二个为备用值。 其中 var() 用法为 var( , ?...提供一个判断是否 Android、iOS。

1.6K20
领券