当前位置: 首页 > 科技观察

隐藏在背后的交互设计

时间:2023-03-20 02:25:15 科技观察

外行人对交互设计的第一印象是什么?线框图?起草?确实,大家看到的交互设计师的日常工作成果就是一些线框图,表面上是这样。事实上,交互设计师所做的远不止于此。再往前想想,信息架构、界面、流程都是设计师需要考虑的问题。接下来,我想谈谈我所理解的交互设计。交互设计中最重要的两个因素:Information&Interaction1.Information人们每天要面对那么多的信息,从杂乱无章的信息中筛选出对用户有价值的信息,呈现给用户,帮助用户做出选择,引导用户去完成任务。信息的筛选直接影响用户的使用,不能在用户需要的时候提供有用的信息会导致任务失败。所以信息是交互设计师需要关注的第一要素。2.交互获得信息后,您需要设计用户与信息的交互方式。信息的分类和布局会影响用户与信息的交互。用户得到信息后,做出反应并采取行动,应用也需要来回给予足够的反馈,协助用户完成任务。以上两个元素都是从用户的直观体验中体现出来的,也就是说,它们经常在用户界面上显示出来。我们可以称之为“可视交互设计”。具体形式包括:信息架构:对筛选的信息进行分类,通过页面承载信息,规划信息层次(页面)界面设计:在页面上布局信息流程设计:放置任务以上三个关键点是交互设计师的基本要求。很多时候,非专业人士也可以做7788,但还是有一些互动。设计的不直观,或许用户会略有感受,但总是在不经意间让用户使用起来更加顺畅。我们可以称之为“隐形交互设计”。而这些看不见摸不着的交互设计,也很容易被初级交互设计师所忽视。如今移动互联网发展迅猛,移动产品更加注重这些无形的交互设计。因为移动应用的使用场景、网络环境、使用心态与用户使用网页产品时有很大的不同。所以在了解这些看不见的交互设计之前,需要对移动应用场景有一定的了解。1.使用场景用户在使用移动产品时,可能会在户外人多的公共场所使用。此时,应特别注意移动应用程序设计的隐私和安全。用户可能会在家中、床上、厕所等各种姿势使用产品,因此要特别注意交互的便捷性和容错性。2.网络环境网络环境在“隐形交互设计”中是非常关键的一点。用户会在2G、3G、wifi甚至没有网络连接的情况下使用产品,因此针对各种网络环境进行合理的交互设计是移动产品交互设计师需要考虑的重中之重。解决用户的问题,移动产品是用户的私人工具。当用户需要它们时,他们可以立即开始工作。他们需要快速、直接和有效。用户不喜欢等待。一些研究结果表明,在移动产品的特殊环境下,“隐形交互设计”比网页产品更重要,尤其是对于网络环境和用户等待体验,下面将讨论一般来说,“隐形交互设计”可以是总结为三点:1.加载机制2.刷新机制3.缓存机制原理是用户对客户端界面进行操作,客户端向服务器发送请求,服务器处理请求,返回数据给客户端,并展示给用户,其中客户端和服务端的交互过程用户是看不到的,他确实需要时间,在不同的网络环境下花费的时间会有所不同。如何让用户在这段时间有友好的体验?这就是“加载过程”发挥作用的地方。加载过程的要点可以概括为:1、让用户感知到产品在为他努力工作;2、让用户对等待的时间长短有一个基本的心理预期;加载过程的良好设计。动态加载进度表示产品正在运行。总进度和当前进度可以让用户及时了解情况,让用户根据这些信息预测时间,产生心理预期。有趣的进度条设计或加载过程中显示一些功能介绍提示(游戏中常用),可以有效降低用户等待时的焦虑感,也可以有效提高用户的容忍度。进度条是web产品时代的产物,还有一种loading设计,就是loadingIcon,因为移动端产品请求的数据量不大,所以进度条往往是瞬间完成。在这种情况下,加载设计被简化,许多移动产品使用加载图标来表示加载过程。以上是常用的两种加载方式。下面结合手机产品介绍它们的用法。:单页整体加载这种加载比较简单,一般在页面内容比较单一的时候使用,所以最好一次性加载完所有数据后再显示内容。这种分块加载方案的特点是让用户一步步看到内容,减少用户在这个渐进过程中的焦虑感。其中又可以分为,如果模块之间有关联,则先加载父内容,再加载子内容。比如优酷先加载栏目,再加载每一栏的内容。如果模块之间没有绝对的关联,可以独立加载各个模块的内容,根据请求的快慢分别显示。这样一来,用户有一定概率可以在不完全刷出数据的情况下找到自己需要的功能。比如大众点评和淘宝客户端的框架是固定的,更新了内容,可以先展示框架,再展示各个模块的功能。数据被单独加载和显示。比如iOS内置的各种应用,比如云音乐,需要特别注意加载失败的状态。毕竟每个模块都提示加载失败。点击重试是一件非常令人沮丧的事情。你可以根据信息的优先级,决定哪些数据失败使用默认状态,哪些数据使用失败提示。方案三:父页面&子页面或者同一个app内跨页面加载。页面之间的字段可以重复使用。加载子页面时,不需要重新加载新数据方案四:预加载这种加载方式的特点是在加载页面内容的同时预测用户下一步的行为,为他需要使用的页面加载内容next,这样他就可以在下一步使用的时候,运行的时候就可以立即获取到信息,不需要等待加载。预加载为用户提供了无缝的产品体验,让用户在使用产品的过程中更加直接顺畅,没有被打扰的感觉。具体例子包括:浏览图集时,看到第一张图时,后台会自动加载第二张、第三张、第四张图。当用户浏览第一张图片,切换到第二张图片时,不会有加载等待的过程。浏览新闻列表时,后台预加载每条新闻的内容。当用户选择阅读某个新闻时,他们可以立即阅读该内容。然而,这种解决方案需要面对许多问题。最直接最重要的就是流量问题,因为它会自动跑掉很多用户可能根本用不到的数据流量,所以一般情况下在wifi环境下可以设置成使用这种加载方式。或者设置加载规则,只预加载主要内容,一些次要内容可以在用户实际使用时加载。比如在预加载新闻文本的情况下,可以只加载文本信息,图片信息可以等到用户进入内页后再加载。这种预加载和块加载的结合也广泛应用于各种场景。此外,预加载也需要时间。它只是不在客户端显示给用户,而是在后台静默运行。需要特别考虑用户在加载完成之前使用信息的情况,因此在设计预加载时,需要同时考虑其他因素。适用于这种情况的正常加载方法。预加载需要根据具体场景进行设计,设置信息的优先级,综合考虑各类信息的具体大小和流量,整体考虑预加载的方式。这些都需要仔细分析和思考。随着网络环境的发展,预加载会成为未来加载产品的常用方式,他为用户提供的无缝体验极大地提高了产品的易用性。操作加载机制除了需要加载页面上的信息外,还需要通过向服务器发送请求来记录页面上的操作。方案一:加载层执行操作后,弹出模态提示层告知用户正在加载。使用模态提示主要是为了防止用户在此过程中进行其他操作,导致当前加载出错。由于使用模态提示,以及由于网络原因可能长时间处于加载状态,建议提供“关闭”操作,中止本次加载,恢复App可用状态。当加载失败时,可以将当前浮层转化为失败提示。模态提示层是最安全的方式,但是会让用户在使用过程中有被打断的感觉。方案二:控件本身的加载状态这种方法结合了操作的加载状态和控件的样式。操作某个控件后,该控件变为加载状态。此时不能对控件进行重复操作,因为这种加载方式是控件自身的状态,不会影响其他操作,所以用户还可以在页面上进行其他操作,可能会导致同时请求多个,增加风险加载失败,这也是这种方法的一个缺点,但这种极端情况很少出现。请求失败后,可以通过Toast提示告知用户失败的原因。方案三:用户在后台操作后,客户端会立即报告操作成功,然后将请求放到后台与服务端进行交互。用户无需了解或等待此过程。正常情况下,体验非常好。但是,在极端情况下,会出现一些莫名其妙的情况。由于请求是在后台记录并与服务端交互的,所以客户端并不会说明实际请求是否成功。全部显示为操作成功,会导致用户误以为操作成功,但实际上,下次再看的时候,发现并没有成功。因此,这种加载方式需要根据具体的使用场景进行权衡。对于一些重要的操作,建议使用模态加载方式。对于一些小操作,比如点赞、订阅、关注等,可以使用后台加载的方式。#p#刷新机制刷新机制也是设计者容易忽略的问题。合理的刷新机制可以让产品使用起来更加顺畅。刷新机制一般有以下三种:方案一:通过左手指在屏幕上的手势刷新向右滑动、向上滑动、向下滑动来达到刷新的目的,包括一些浏览器产品的自定义手势,比如水平折叠,折钩,清爽。最常见的下拉刷新也是手势刷新。一个按钮就达到了刷新数据的目的,但是刷新按钮的存在已经成为一种过时的表现,在手机这么小的界面上给刷新按钮腾出空间会非常困难。但是,避开形式主义,运用得当,才是设计的精髓。此刷新解决方案应按需使用。解决方案三:根据设置的规则自动刷新,比如时间和事件规则,自动从服务器获取新数据并替换旧数据。使用自动刷新需要根据场景考虑。场景一——对于频繁更新的内容和时间敏感的内容,如果用户在设定的时间内没有使用,可以考虑在下次使用时自动刷新。为微博、新闻等时效性产品向用户推送内容。如果用户在24小时内没有打开该产品,则该时间线会在用户下次打开该产品时自动更新。对于页面,可以考虑设置时间规则,在后台静默的为用户更新数据,替换旧的数据缓存机制。注意一张图来解释什么是缓存以及缓存的作用。“缓存”是保存已经加载过的数据,下次需要重用时,不需要加载到服务器,直接获取本地数据。“缓存”我的理解“临时缓存可以这样分类,常用于一个功能页面中,用来保存每一列的缓存。在同一个功能中,子功能会被分成多个列进行划分。每个tab栏目下的内容在使用过程中可以保存为临时缓存,在这个功能中切换栏目不需要重新加载数据,使用缓存显示。对于用户来说,在使用过程中实现无缝浏览。对于服务器来说,数据很少更新在较短的时间内,所以总的来说,可以满足用户的正常需求,并且可以达到很好的清理临时缓存的体验。机制是:退出功能模块会清除之前的缓存。也就是说,下次进入这个功能模块,我们需要重新获取数据,很多时候我们会用到临时缓存,因为这些信息真的没有那么重要,不需要反复查看。对于那些我们经常使用并经常需要orepeat对于我们查看的信息,我们会拿一个固定的缓存保存在本地,这样我们下次浏览的时候就不需要再向服务器请求数据了。会细分为可以手动清理的缓存,和不能手动清理的缓存。第一种是我们最常见的缓存,几乎所有产品都采用这种缓存方式。通常,用户在浏览文章和图集时加载的数据都以这种形式缓存在本地,下次阅读这篇文章或图集时无需加载。用户还可以手动清除这些缓存以释放空间。对于一些特殊的场景,比如一些相对固定的数据,我们不愿意一开始就打包到App中,这样会占用太多的容量,导致产品包很大,我们也不愿意把这些数据加载到每次我们进入页面时服务器。信息,我该怎么办?解决方法是我们可以只加载一次,永久保存在本地,这样安装包就不会太大,以后也不需要再加载了。比如有些页面的背景图比较固定,很少变动,所以当用户第一次进入页面时,将背景图加载并保存到本地。这种缓存无法清除。下次用户进入页面时,会读取本地缓存并显示出来。就是这样。这种缓存方案很少用到,因为场景太少,具体的使用场景还有待开发。/这些存储在本地的缓存,会占用空间,手机的容量是有限的。产品如何清除缓存?每个人都熟悉手动清洁。一般应用都会在“设置”中提供清除缓存的功能,一键释放空间。另外,APP最好设计一个自动清理机制。这种机制可以设计成二维的。时间通过设置固定时间或根据用户使用周期灵活设置时间来清除缓存。每个产品的场景不同,用户的使用频率也不同。在设置该机制时,需要根据实际情况考虑容量。一般会设置一个容量限制,利用栈的设计原则清理缓存,溢出栈的旧数据。摘要将自动清除。这些“看不见的交互设计”纠结于那些细节,但作为交互设计师,不要认为这些是很小的点。事实上,他有很多事情要做。不知道刷新、加载、缓存机制的设计是否应该属于交互设计师的专业范围,但是作为用户体验设计师,这几点或多或少都会影响到用户的体验,我们应该给予足够的重视.这些机制,独立的,都有现成的模型可以参考,但是交互设计师不应该单独设计,往往融合在一起才有意义。不同机制的组合往往会产生神奇的效果,这就需要设计师根据每个产品的不同场景进行特殊的配方。原文链接:http://uedc.163.com/11614.html