winform是如何自动弹出软键盘_软键盘 (Soft Keyboard) 有哪些需要考量的细节?

cf42b25d7152a5573eab6080ab4991fa.png

软键盘(Soft Keyboard)又称为虚拟键盘,是一个在界面内有着 键盘形态和功能 的控件。用户可以通过软键盘完成各种场景下的输入,从而完成用户目标。 软键盘在用户输入场景中起到了非常重要的作用,特别是在用户需要连续输入不同的内容时,能够为用户 合理调用不同的键盘以及定制恰当的键盘指令 ,可以提升用户填写效率,带给用户更友好的交互体验。 软键盘的调用规则往往容易被新人设计师忽略,如果没有明确的键盘调用规则,对开发同学来说一般是调用默认键盘,这意味着用户在填写过程中可能需要不停切换键盘,造成操作成本增加,甚至会增大页面的跳出率。

那么,我们该如何讲清楚键盘的调用规则和其中需要注意的设计细节呢?本篇文章总结了软键盘调用规则的细节经验,希望能够给设计师一些参考,在设计稿上标注出明确的键盘类型及交互规则,给用户带来更友好的填写体验。

软键盘的基本元素

——

首先,我们先来认识一下软键盘,了解软键盘控件的基本构成元素。下图以 iOS/Android 的默认键盘为例:

af53ec2e588f82af63643f6fcebfbbfd.png

1. 内容区按键

键盘的核心主体,不同的键盘类型有不同的内容及布局

2. 功能按键

键盘上的动作指令,可根据场景定制按键的动作及交互

3. 其他按键

键盘上的其他按键,包括键盘类型切换、大小写切换、删除、语音输入等

软键盘的类型

——

了解完软键盘的基本构成,接下来看看软键盘有哪些类型。即便是在同一个原生系统,软键盘也有着各式各样的不同类型。我们通过软键盘内容区按键的不同,可以分为以下 8 种常用的 键盘类型 keyboard type ,从而满足大部分的场景需求。 1. 默认键盘 常规的全键盘,不做任何限制,可输入中英文字母数字等

9a65e2e38b607614efac67a01d51b029.png

2. 字母键盘 常规英文输入键盘,不可输入中文,常用于密码输入场景

c2232a34b0920348b4e6b98d62ac8e58.png

3. 邮箱键盘 在默认键盘基础上增加了“@”和“.”,常用在邮箱输入场景

ff3ca77267924d3e959b239d1afc4bbb.png

4. URL键盘 在默认键盘基础上增加了“.com”、“.”和“/”等,常用在输入网址的场景

deffd91be76594065b929499bf9d74a2.png

5. 数字键盘 仅可输入数字 0-9,常用于输入验证码场景 890a0ac8d6a1fe4566063eaaf1354256.png 6. 电话号码键盘 在数字键盘的基础上,增加「*」「 # 」2 个符号 ba8c77457119b40c66fe418ba8229418.png 7. 小数点键盘 在数字键盘的基础上,增加小数点,常用于金额输入场景 083abde2aaf731d667ff381abcc68d13.png 8. 数字符号键盘 在数字键盘的基础上,多了标点符号 963cb5ed9df3f54fd7e3246e4fb446de.png

软键盘上的功能按键

——

除了认识软键盘的类型,还有一个非常重要的元素—— 功能按键 keyboard actions ,即键盘上的动作指令,这和用户的填写效率及体验有重要的关联。不同系统提供了多种动作指令,如iOS提供了多达12种可指定的动作指令,这里就不一一列举了。其中常用的指令有以下这些:

351b039980b88b88a499ad8a5c3f1613.png

1. 换行(return) 键盘默认的动作指令,点击执行 换行 动作,一般用于长文本输入场景 2. 前往(go) 点击后执行 进入下一个 任务项 的动作,一般点击后键盘收起且伴随着网页跳离,如输入网址场景 3. 下一步(next) 点击后执行 切换至下一个输入项 的动作,常见于表单填写页 4. 搜索(search) 点击后执行 搜索 动作,一般点击后键盘收起且伴随着网页跳离 5. 发送(send) 点击后执行 内容传送 的动作,常见于通讯工具的信息发送或者评价等场景 6. 完成(done) 点击后执行 任务完成后终结 的动作,如表单填写完成场景

软键盘的细节考量

——

通过以上的介绍,相信大家对软键盘已经有了大致的认识。接下来来说说在实际的产品设计过程中,我们需要注意到哪些细节?

细节 1  根据输入场景唤起恰当的键盘类型

4eba7d67a2c9c2fe93b8802e337a8ac9.gif

上图是一个填写收件人联系方式和地址的表单页面,在填写过程中可以看到用户遇到了以下几个问题: 1)手机号填写调起的是默认键盘 用户需要手动切换键盘且只能切换至数字符号键盘,除了用户需要输入的数字外还会有很多 “ 没用的 ” 标点符号,如果不小心误触了某些符号,键盘又会自动切换回默认键盘。 2)手机号填写输入框可以填写中文和其他字符 输入框没有做字符类型的限制,且用户点击保存后才会有校验提醒。 以上问题主要是因为没有根据用户的输入场景唤起恰当的键盘而引起的,每一个细节的疏忽都可能会导致不同的体验问题,因此在我们的设计交付物一定要 明确键盘的类型 。

细节 2  “ 巧用 ” 键盘的功能按键,定制恰当的动作指令

除了键盘类型,我们还需要考虑键盘上的功能按键,特别是涉及到表单输入的场景。

从前文的示例动图还可以看到:当用户填写完一项内容后需要用户手动移到下一项的位置并触发再次唤起键盘。用户在整个交互过程中,手移动的路径是很长的,特别是一些大屏手机,这大大降低了用户的填写效率。

我们可以合理的利用键盘上的功能按键来解决这个问题并提升填写效率,实现更好的交互体验。

1)表单的填写场景 用户首次触发填写项唤起键盘,这时候可以把键盘的功能按键 keyboard actions指定为「下一步」,用户完成输入内容点击此动作指令即确认当前输入框的内容同时进入下一个内容输入。这样不仅可以减少用户操作,提升表单填写效率,甚至可以降低页面的跳出率。还有一个需要注意的点是:到最后一个输入项的时候,功能按键应该指定为「完成」或者「前往」。

3b7b6bc8d4a10cc59b165f1f1680783f.png

2)单项内容填写场景 用户触发填写项唤起键盘后,我们可以通过用户场景来定制动作指令,从而减少用户的操作成本。如搜索场景,我们可以将功能按键指定为「搜索」;在聊天/评论等场景,可以指定为「发送」;在输入网址的场景,可以指定为「前往」......

78b6d9e7be5e91a4587d22a26a1fb16c.png

因此在实际的产品设计过程中,除了标注出键盘类型,我们还需要标注出键盘的 功能按键 ,对于表单填写页面,还应该标注出 多种键盘的情况以及功能按键的切换规则 。

细节 3  考虑键盘唤起和收起时的临界条件

键盘唤起和收起都会引起用户可视区域的变化,因此我们还需要考虑键盘唤起和收起时的临界条件。 1)重要内容是否会被遮挡 我们在设计界面的时候,要考虑到唤起键盘时是否会把重要内容遮挡掉。如下图不同产品的登录页面。 唤起输入键盘前:

0fae5966cefb531f1d1d7d0358f422e4.png

图 1

62760001a22e9ab49e2c8fbd01959586.png

图 2

0a0ac76df4755a6810fa4c0d30738827.png

图 3

唤起输入键盘后:

08fd7a8501ec00692513139cb0b08515.png

75291955bc2fc2407ef1147a2e97a33e.png

c5a2a6b28c1051b31a248e6416102182.png

图一初看没有什么问题,实际上却没有考虑到键盘唤起状态时对信息的遮挡。用户输入完手机号,需要先收起键盘再唤起密码的输入,最后又需要先收起键盘才能点击登录按钮,增加了操作成本。

图二和图三则都考虑到了键盘唤起和收起的临界状态,是比较好的案例。图二的设计保证了无论键盘处于什么状态都不改变页面布局且不会遮挡重要信息;图三则采用了页面上移的形式,当键盘被唤起时,页面往上移动,保证重要信息都在用户可视区域内,键盘收起时,页面恢复默认状态。

2)焦点改变与键盘状态的联动 还有一个需要考虑的小细节是用户从唤起键盘到完成输入这一过程并不一定是连续的,如用户聚焦输入框唤起键盘后或者输入到一半时,又想看看页面上的其他内容而上下滑动了页面。 像 这样的场景,我们应该如何处理与键盘状态的联动呢? 比较好的做法应该是当用户上下滑动页面时或点击键盘及输入框以外的地方时,收起键盘,即输入框失焦时收起键盘,用户再次聚焦输入框后唤起键盘。 输入框失焦即收起键盘的交互细节是各系统可支持的配置值,实现起来并不复杂。但如果设计交付物没有标注清楚规则的话,开发同学很可能会忽略。这种情况下当键盘被唤起后,只能由用户手动收起,导致用户在输入的过程可能会出现不顺畅的体验。

写在最后

——

完整清晰的软键盘调用规则和临界处理可以提升用户填写效率,确保用户友好的交互体验。我们 在做输入场景的设计时,需要特别注意对软键盘调用的规则处理 : 1.指定合适的键盘类型; 2.指定恰当的功能按键——即动作指令; 3.控制键盘唤起和收起的临界条件。

设计处处是细节,而细节,也是友好设计的贴心体现。

共勉之 :-)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WinForm软键盘是指在使用WinForm开发的应用程序中,实现自定义的软键盘功能。在一些嵌入式设备或需要自定义输入方式的应用中,使用WinForm软键盘可以实现通过触摸屏或鼠标点击来输入文本的功能。 为了实现WinForm软键盘,涉及到以下几个关键技术: 1. 浮动窗体的实现:通过创建一个浮动的窗体来显示软键盘的界面。这个窗体可以根据需要进行自定义设计,并在需要的时候显示在输入焦点所在位置的附近。 2. 文本框光标控制:在按下软键盘上的按键后,需要将输入焦点切换到相应的文本框,并将光标显示在文本框的最上方,以便用户可以直接在该文本框中输入文本。 3. 输入状态控制:在没有物理键盘的情况下,需要通过触摸屏或其他输入设备来触发软键盘的显示。为了避免软键盘一直在界面上显示,需要在处于输入状态时才弹软键盘,否则不显示软键盘,以提高界面的美观性和用户体验。 通过以上关键技术的实现,可以在WinForm应用程序中实现自定义的软键盘功能,以满足特定的输入需求。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [实现软键盘的几个关键技术(转载)](https://blog.csdn.net/weixin_33989780/article/details/85486039)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [C#实现软键盘的制作](https://blog.csdn.net/weixin_41883890/article/details/126052226)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值