往期回顾,专栏目录,更新动态,优惠政策,版权须知
温馨提示:如这是第一次接触《重学安卓》,可通过上述链接快速了解《重学安卓》专栏,获取 专栏目录、试读内容、更新动态 和 发展状况。
截至目前,专栏已对 体系化文章 实施 3310 余次修订,数十位群友告诉我,受专栏启发 亦开启了写作之路。群里不定期会有小伙伴讨论适配问题、分享原创开源库 和 提供内推机会,订阅后可随时进群交流。
·
Note 2021.5.25 重要提示:
阅读本文最佳时机是,您已吃过 阅读 “源码” 或 “源码分析文” 时 找不到头绪的苦。
您还没吃过苦,那您先不要着急阅读本文。您得吃过苦,才会有体会。
在您吃够这方面苦后,您才有机会发现,本文正是专用于解决 “如何找到正确打开方式” 的困扰。
我们 绝不通篇贴源码,而是基于广泛实践和反思,在累积过大量样本 乃至足以排除掉所有干扰信息后,点到为止揭露 滑动冲突 最核心本质,方便您理解其真实的存在意义,乃至笃信使用项目中。
前言
上一期我们介绍 “如何正确思考” 及 “视图学习两大方向”,
相信部分读者在加入该专栏前,就已掌握正确思考方式;另有些读者,经过 3 个月见证,也多多少少领悟深度思考精髓。
所以对于老读者,我是十分有信心通过 “专业简练的表述” 来诠释和概括一个技术存在的缘由、作用范围,及与其他技术间关系。
然而 每一天都可能有新读者加入,所以出于负责任考虑,从前乃至今后每一篇,我都尽可能用 “接地气话语” 来输出 “深度思考” 结果,让还未彻底掌握 “深度思考” 读者,也能享受 “豁然开朗” 阅读体验。
年复一年滑动冲突
视图 API 这章,我们主要会介绍视图 坐标系统、属性参数;事件分发、滑动冲突;视图排版、视图绘制 等等,
但以我多年经验来看,“滑动冲突” 是人们眼里最 “高大上” 和 “神秘莫测” 痛点所在,
可能大家 “浏览器收藏夹” 里,都添加不下 10 篇关于 “滑动冲突” 解读,可这么多年过去,还是纹丝未动,
这是怎么回事?
因为人们不过是听说,面试必考,Android 开发进阶一定要会处理滑动冲突,
除此之外,他们并不确知、也未曾想过:
为何会有滑动冲突、
滑动冲突占整个 “视图学习” 份额到底有多少、
掌握滑动冲突能在多大范围内发挥作用、
实际问题会不会无边无际、让所学变渺小和失效?…
就是对这些 必须首先想明白的状况 不清不楚,使得 “滑动冲突” 学习 迟迟未能开始。
再加上,视图 “深度思考知识”,至少一半以上是 产品交互设计领域 知识,所以除非事先具备深度思考方式,且 出于巧合顿悟交互设计精髓,否则这个大门或永远找不到钥匙打开。
网上那么多文章,通篇贴代码,你看不懂,或者花很大代价将代码流程捋顺,事后却未留下任何印象,这不怪你,毕竟 写这些文章者,本身也是完全未经过思考,并没好到哪去。
所以下面,就请倒掉杯中水,带着思考 “为什么” 的心,和我一起 无痛理解 滑动冲突来龙去脉。
文章目录一览
- 前言
- 年复一年滑动冲突
- 为何存在 “滑动” 设计?
- 为何 “首页和详情” 如此设计?
- 所以为何存在 “滑动冲突”?
- 如何解决这些问题?
- 综上
为何存在 “滑动” 设计?
因为 人们有 “浏览信息” 需求;
且 移动设备屏幕空间小,需使内容可滑动,来承载更大信息量。
关于第一点,其实很好理解,回想一下移动设备使用动机 —— 是的,多是 漫无目的浏览以打发时间,或是 如饥似渴阅读以增长见识。
关于第二点,你或许可以反驳,因为就像书籍一样,软件可做成翻页,即,点击按钮,自动翻到下一页,同样能确保更大信息量。
那为何要存在 “滑动” 操作?
因为滑动 更符合用户直觉,滑动 能维持操作连贯性、不打断用户意图、让用户感觉爽 —— ©KunMinX。
👆👆👆 划重点
如这么说无体会,那往后就得多多练习:结合用户使用场景、揣摩用户 “意图” 和 “心态”,如此才能明白什么对用户来说最爽。(下文我们会详细交待)
此外,正因用户多数时间是 “漫无目的浏览” 以打发时间,所以 最与滑动紧密相关,不外乎以下两个场景:首页和详情。
👆👆👆 划重点
于是
为何 “首页和详情” 如此设计?
还是回到刚才提到 “屡试不爽” 用户体验目标:维持连贯性。
首先我们来看看首页设计
—— 为何像 AppStore 这种,首页要设计成列表嵌套 Banner 呢?
图片截自 “Google Play” 客户端
因为这种场景下,用户通常是 漫无目的浏览、心里想的是 “贪得无厌、大而全” 涉猎一遍、不放过 “首页” 任何新奇有趣事物,也即他们意图是,把首页内容给 “消灭掉”,
所以,点击进入 “详情页” 对他们来说,会把工作量指数级增加、会让消灭首页目标被打断(因为详情页里面还有更多软件在推荐,根本看不过来),
所以这种场景下,为何存在列表嵌套 Banner 设计 ——
为的就是让用户不必点击 “查看更多” 增加工作量,光是首页就能通过 “横向滑动” 把 “最值得看的 TOP 20” 过一遍,
如此,既通过 延续滑动操作 维持连贯性,又让用户保持在首页而 没有页面跳转来打断,再次维持连贯性,
至此,从交互设计、用户体验 —— 这个最根源角度,我们确知为何存在 “列表嵌套 Banner ” 设计。