HarmonyOS ArkUI 图片画廊页面从缩略图选择到大图预览的交互设计开始先把“看图”这件事说清楚一个好的图片画廊页面不需要堆叠很多功能才能让人感到完整。用户进入页面后首先要知道这里展示的是什么其次要能快速找到一张感兴趣的图片最后还要得到明确的选中和喜欢反馈。这个页面就是围绕这条最短路径组织的顶部告诉用户当前相册共有多少张照片中间使用一块较大的预览区域展示当前选中的内容底部使用缩略图网格承载浏览和切换。页面中的图片名称是六个具有画面感的短标题湖畔日落、城市夜景、山间小路、咖啡时光、花园光影、海边清晨。它们不是从设备图库读取的真实文件也没有请求网络图片。页面用文字块模拟照片缩略图和预览画面所以阅读页面时应把它理解为一个“画廊交互样例”重点在选中关系、状态变化和界面反馈而不是图片文件管理。打开页面时第一张“湖畔日落”处于选中状态。顶部标题是“我的相册”右侧显示“6 张照片”中间预览卡片显示当前照片名称、“精选照片 · 2026 年夏”、喜欢按钮以及“轻触下方缩略图预览”的操作提示。向下浏览可以看到“全部照片”和六个缩略图项。这样的信息排序很直接先说明页面用途再展示当前内容最后提供切换入口。一、页面的视觉分区页面采用浅粉色背景内容从上到下分成三个连续区域。最上方是标题行标题和数量信息放在同一个横向布局中中间是带圆角的预览卡片承担当前图片的主视觉下方是缩略图区域负责呈现全部六项内容。三个区域没有复杂的导航层级用户只需要在同一页完成浏览。标题行的左侧文字较大且加粗右侧数量文字较小、颜色更浅。左侧“我的相册”说明页面身份右侧“6 张照片”说明内容规模两者一主一次阅读顺序自然。数量不是另外维护的手工文案而是由照片列表的数量产生因此当这个列表仍然是六项时标题区域始终与缩略图数量保持一致。预览卡片使用固定高度和较大的圆角。卡片上方先放当前照片名称再放季节说明底部放喜欢按钮和操作提示。名称的字号明显大于说明文字说明文字使用浅粉色与深色背景形成对比。用户切换缩略图时名称会跟着切换卡片的颜色也会在两种深色之间变化。这个变化不是为了模拟真实照片内容而是让“当前选择已经变了”这件事一眼可见。缩略图区域先显示“全部照片”标题然后以可换行的方式排列六个小卡片。每个小卡片上方是较大的数字下方是照片名称。数字让每个位置容易识别名称让用户知道这一项代表什么。选中的缩略图使用更饱和的粉色未选中项使用较柔和的粉色配合预览卡片的变化页面同时给出了局部反馈和整体反馈。二、六项内容与页面语义六个名称本身就是这个页面最重要的数据。它们没有照片路径、文件大小、创建时间和相册目录等附加字段页面也没有尝试把这些信息写出来。正因为字段少每个名称在界面上承担的角色很清楚它既是缩略图下方的标签也是预览卡片中的当前标题。“湖畔日落”作为初始项给页面一个安静的起点。用户点击“城市夜景”时预览标题从湖畔日落变为城市夜景缩略图选中颜色移动到第二项点击“山间小路”或“咖啡时光”时变化规则完全相同。后面两项“花园光影”和“海边清晨”也没有特殊分支它们只是列表中的不同位置。统一的交互规则比给每一张图增加独立按钮更容易理解。这种设计也说明了一个重要问题页面是“选择一个内容并预览”不是“同时打开多张图片”。任何时刻只有一个数字位置处于选中状态预览卡片也只展示一个名称。用户不需要关闭当前图片也不需要返回上一级点击另一个缩略图就会完成切换。这是单选式画廊最轻量的交互闭环。从内容表达来看标题采用短语适合放在窄卡片下方。假如名称很长小卡片的固定宽度会让阅读压力增加当前六个名称长度接近网格中的视觉宽度较均衡。名称颜色使用较深的紫红色既能在浅粉背景上读清又不会抢过上方的预览区域。三、当前选中项如何影响预览页面维护一个当前选中位置。初始位置是第一个元素因此页面首次出现时会显示“湖畔日落”。点击任意缩略图后位置变为被点击项的序号预览标题立即读取该位置对应的名称。这里的关键不在于切换动画而在于“缩略图、标题、背景色”三个视觉部位同时使用同一个选择结果。如果只改预览标题而不改缩略图颜色用户仍然能看到名称变化但不容易确认刚刚点中的位置。如果只改缩略图颜色而不改标题用户会看到颜色移动却不知道当前预览是什么。当前页面把两者绑定在一起并且让预览卡片背景也参与变化形成三点同步大卡片说当前是谁小卡片说当前位置在哪里颜色说状态已经更新。预览背景的切换规则很简单选中位置为偶数位置时显示一种深玫红色为奇数位置时显示一种偏紫色。这个规则与真实照片的主色无关也不是图片分析结果它只是一个可见的状态信号。因为用户能在短时间内连续点击多个缩略图所以明显的色差有助于确认每次点击都产生了结果。这个选择状态不会因为点击喜欢按钮而改变。喜欢是另一条独立的状态两个状态彼此分工选择状态决定“正在看哪一项”喜欢状态决定“是否喜欢当前展示项的操作标记”。点击喜欢不会跳到下一张也不会改变缩略图的选中颜色点击缩略图也不会自动把喜欢按钮切回未喜欢。这样的独立性让交互结果容易预测。四、喜欢按钮的反馈闭环预览卡片底部有一个粉色按钮。初始文案是“♡ 喜欢”点击后变成“♥ 已喜欢”再次点击又回到“♡ 喜欢”。按钮文字同时表达符号和状态用户不用寻找额外提示就能知道当前开关是否打开。按钮的底色保持不变变化主要体现在符号和文字上这样可以避免整个卡片在点击后跳动。喜欢状态是页面级别的一个布尔值因此它属于当前画廊演示中的单一标记。当用户先选中“城市夜景”再点击喜欢按钮显示“♥ 已喜欢”随后切换到“海边清晨”按钮仍会保持已喜欢状态。这个结果应理解为一个页面层面的喜欢开关而不是每张照片都有独立收藏状态。页面没有为六个名称分别建立喜欢记录也没有展示收藏数量。这个边界很重要。如果把按钮写成“收藏当前照片并保存到相册”就超出了实际页面表达。页面能证明的只有文案切换和按钮交互它没有提供持久化保存、登录账号、收藏列表或系统图库写入。适合在文章中说明的是按钮完成本地界面状态切换帮助演示按钮状态如何即时反馈。从交互顺序看喜欢操作可以发生在任何选中项上。用户可以先浏览再喜欢也可以先喜欢初始项再继续浏览。由于两个状态互不覆盖连续操作时页面不会出现不可解释的跳转。再次点击按钮可以撤销当前标记这使按钮形成完整的开关闭环而不是只能单向触发的动作。五、缩略图网格的阅读体验缩略图区域采用可换行布局把六个条目安排在有限宽度内。每个条目由数字块和名称文字两部分组成数字块固定为较宽、较高的矩形名称文字位于其下方。条目之间保留垂直间隔避免相邻名称粘在一起横向排列则通过空间分配形成较整齐的网格。数字块的作用不只是装饰。它把六个条目变成明显的顺序位置用户可以快速识别第一项、第二项和后续项点击目标时不必只依靠文字辨认。当前项的数字块用更鲜明的粉色标记其他项用浅色。即使用户没有仔细读文字也可以根据颜色判断预览来自哪个位置。点击区域包含整个条目而不是只有数字或名称的一小部分。这样做降低了点击精度要求也让卡片的视觉范围和交互范围一致。用户可以点击数字、名称附近或条目空白区域都能完成同一项选择。对于移动设备而言这种较大的触摸区域更符合拇指操作习惯。网格中的六个条目不会因为选择改变顺序也不会因为喜欢改变位置。列表只承担浏览入口不承担排序、删除或新增。页面没有添加按钮没有删除按钮也没有长按菜单所以内容始终保持稳定。稳定的排列有利于用户形成位置记忆再次点击时仍然能在同一个位置找到对应名称。六、滚动区域与内容承载页面把主要内容放在可滚动区域中。顶部标题行保持独立下面的预览和缩略图一起进入滚动内容。这样安排让标题作为页面上下文存在同时允许用户在内容较多时向下查看所有卡片。当前只有六项内容屏幕高度足够时可能一次就能看到大部分区域但滚动容器仍然定义了清晰的内容边界。滚动内容内部使用垂直排列不同部分之间有固定间隔。预览卡片先出现用户打开页面就能先看到当前选中内容“全部照片”标题随后出现告诉用户下面是浏览区域网格最后出现按照从上到下、从左到右的阅读顺序呈现六项。这个顺序符合用户从当前内容转向更多内容的心理路径。页面没有为滚动位置增加额外文字提示也没有显示滚动百分比。文章不应把它描述为带有分页、懒加载或无限列表的图库。当前数据只有六个固定名称滚动的意义主要是承载布局和保持页面在不同尺寸下可以查看完整内容而不是处理大规模资源。如果在较小屏幕上打开用户可以向下滑动看到网格底部如果在较大屏幕上打开更多内容会同时出现在视野中。内容本身不因屏幕变化而改变变化只体现在可见区域多少。这种简单的承载方式适合当前页面规模也避免引入与实际需求无关的加载状态。七、颜色变化与状态表达页面使用浅粉色作为整体背景预览卡片使用深玫红或偏紫色缩略图使用浅粉和高饱和粉色。颜色层次让大卡片从背景中突出出来也让选中项从未选中项中突出出来。色彩不是单纯的装饰它承担了“内容区域”“当前选择”“普通项目”三种信息层级。标题文字采用深紫红色保证在浅背景上可读数量信息采用更柔和的紫灰色说明它是辅助信息。预览标题使用白色放在深色卡片上形成强对比季节说明和操作提示使用更浅的粉色表示它们属于次要说明。按钮文字使用深色配合浅粉按钮背景保持了按钮的独立性。选中项使用高饱和颜色而未选中项使用低饱和颜色。这个差异要足够明显才能在用户快速浏览时传达当前位置。页面并没有额外增加“当前选中”文字也没有在缩略图旁放勾选图标因此颜色承担了重要的状态提示职责。与此同时数字仍然保持白色避免选中背景变深后影响阅读。预览卡片颜色根据位置变化让切换动作更容易被感知。需要注意这并不意味着每张文字照片都有真实的颜色主题也不代表页面已经加载了不同图片。它只是与选择位置相关的视觉反馈。理解这一点可以避免把页面的占位视觉误读为真实图片预览。八、从打开页面到完成一次浏览一次完整的浏览过程可以分成几个自然步骤。第一步用户打开页面看到“我的相册”和六张照片的数量信息确认内容规模。第二步用户看到默认预览“湖畔日落”知道当前页面已经有一个选中项而不是空白状态。第三步用户向下查看全部照片浏览六个数字卡片和名称。第四步用户点击“城市夜景”。这时预览标题更新背景颜色依据新的位置发生变化第二项缩略图变成高亮颜色第一项恢复普通颜色。第五步用户点击“♥ 已喜欢”或“♡ 喜欢”按钮按钮文案切换。第六步用户还可以继续点击“花园光影”或其他条目观察选择变化是否保持一致。这个流程没有弹窗没有跳转没有加载等待也没有错误页面。每个动作都在当前页面完成反馈发生在用户刚刚操作的附近缩略图点击影响预览和网格喜欢点击影响按钮自身。这样的反馈位置减少了视线移动让页面的学习成本很低。如果用户连续点击多个缩略图最终状态只由最后一次点击决定。中间的预览变化是即时的但页面没有记录浏览历史也不会提供上一张、下一张按钮。用户想回到前一个内容时需要再次点击它的缩略图。这种交互符合“网格选择”模式而不是播放器模式。九、状态之间的关系与边界页面有两个核心状态一个表示当前选择位置一个表示喜欢按钮是否打开。选择位置影响三个地方预览标题、预览卡片颜色、缩略图选中样式。喜欢状态影响一个地方喜欢按钮的符号与文案。这种一对多与一对一的关系非常清楚适合用来理解声明式界面的状态驱动方式。当选择位置从第一项变成第三项时页面不会改变照片总数也不会改变六个名称的顺序当喜欢状态从未喜欢变成已喜欢时页面不会改变选择位置也不会改变预览内容。状态之间没有互相覆盖的逻辑。正因为职责被分开用户可以自由组合操作而不需要记住隐藏规则。状态的初始值也决定了打开页面的结果。初始选择是第一项所以页面不会出现“请选择照片”的空提示初始喜欢状态是关闭所以按钮先显示未喜欢文案。当前页面没有空列表分支因为六个名称始终存在没有无效位置分支因为点击来源就是这六个固定条目没有网络失败分支因为页面没有网络加载过程。这些边界说明了文章应该写到哪里。可以详细解释选中和喜欢的显示变化可以讨论固定列表对页面交互的影响但不能把页面扩展成具有真实相册扫描、图片导入、云端备份、收藏持久化的产品。那些功能可能是未来产品方向却不是当前可见行为。十、页面中的占位视觉应该怎样理解预览卡片没有显示真实照片而是用当前名称、季节说明和颜色块构成一个具有照片卡片感觉的区域。缩略图也由数字和名称组成没有实际图像内容。这样处理的好处是页面加载稳定、资源依赖少同时把注意力集中在选择关系和状态反馈上。对于阅读者来说看到“湖畔日落”并不等于页面已经读取一张名为湖畔日落的图片文件。它只是一个用于展示的内容标签。看到“精选照片 · 2026 年夏”也不等于应用读取了照片的拍摄时间或相册元数据。这句话是固定的视觉说明六个内容切换时仍然保持相同。同样按钮显示“喜欢”也不等于系统相册已经保存收藏记录。它表达的是当前页面中的一个开关状态。退出页面后是否保留、不同用户是否共享、是否同步到其他设备都没有在页面中体现。准确描述这些边界文章才不会把演示界面包装成不存在的功能。占位视觉并不降低页面的学习价值。恰恰因为图片内容被简化读者可以清楚观察哪个状态改变了标题哪个状态改变了颜色哪个按钮只改变自己的文字网格如何表达选中位置。这些都是构建真正图库页面时仍然需要处理的基础问题。十一、交互细节中的可读性标题、数量、当前名称、季节说明、按钮和照片名称分别承担不同的信息职责。标题告诉用户页面是什么数量告诉用户有多少内容当前名称告诉用户正在看什么季节说明补充气氛按钮提供动作照片名称帮助用户在网格中定位。它们没有重复使用同一句话也没有把所有信息挤在一个卡片里。缩略图名称字号较小但内容很短放在固定宽度中仍然容易识别。数字字号较大承担快速定位功能。当前高亮颜色和名称颜色配合让“选中了哪一项”不依赖单一视觉信号。对于色觉差异用户来说数字和标题变化也提供了额外线索。按钮使用心形符号区分两种状态。空心符号代表还没有标记实心符号和“已喜欢”代表已经打开。按钮没有在点击后改变位置避免用户手指连续操作时目标突然移动。按钮旁的操作提示提醒用户可以继续点击下方缩略图帮助首次进入页面的人理解下一步。页面没有使用复杂的手势说明没有要求用户长按或双击。主要操作都是单击点击缩略图切换点击喜欢按钮切换。简单的手势路径更适合作为画廊基础页面也让不同设备上的行为更容易保持一致。十二、为什么当前布局适合六项固定内容六项内容是一个适合网格展示的数量。它足以体现“多张照片”的概念又不会让用户面对很长的列表。通过可换行布局六个条目可以在一到多行之间适配屏幕宽度通过统一卡片宽度各条目保持整齐。页面不需要分页按钮也不需要搜索框。如果内容从六项增加到几十项当前布局可能需要进一步考虑滚动长度、条目复用、分组和加载节奏。但这些是规模变化后的新问题不能反过来改写当前页面的行为。当前页面没有显示“加载更多”没有分段标题也没有筛选条件因此文章应聚焦于六项固定内容如何被选择和预览。布局中的间距保持相对统一预览卡片和缩略图之间不会过于拥挤标题和正文之间也有足够留白。浅色背景提供了连续的阅读底色圆角卡片把重点区域框出来。视觉层级不依赖复杂阴影或装饰线条页面整体更像一个轻量的相册首页。十三、可观察的运行现象首次打开时最容易观察到的现象是预览卡片显示第一项名称第一张缩略图使用高亮色其他五张使用普通色。标题右侧的数量与缩略图数量一致说明总数信息和页面内容保持对应。喜欢按钮显示未喜欢状态操作提示位于按钮右侧。点击第二张缩略图后可以观察三个变化预览标题变成“城市夜景”预览背景颜色根据新位置切换第二项卡片变成高亮色。再点击第四张时同样的三点变化再次发生。这个重复性说明页面采用统一规则而不是为某个名称写了特殊处理。点击喜欢按钮时可以观察按钮文案在“♡ 喜欢”和“♥ 已喜欢”之间切换。预览标题、缩略图颜色和照片数量不会因此变化。再次点击会撤销喜欢标记按钮回到初始文案。这个结果证明喜欢状态和选择状态相互独立。向下滚动时可以看到全部照片网格。滚动只影响内容在屏幕中的位置不会改变选中项也不会改变喜欢按钮状态。回到预览区域后刚才的选择和按钮状态仍然保持在当前页面状态中。这种连续性让用户可以先滚动找图再回到上方确认预览。十四、容易产生的误解第一种误解是把数字卡片当作真实图片缩略图。实际上它们是数字加文字的视觉占位没有图片内容。第二种误解是把“我的相册”理解成已经连接系统相册。页面没有读取设备图片也没有显示系统相册授权结果因此它只是界面标题。第三种误解是把“精选照片 · 2026 年夏”理解成动态拍摄信息。这个说明文字始终固定不随六个名称变化也没有日期计算。第四种误解是把喜欢按钮理解成持久化收藏。它只产生当前页面的文案切换没有收藏列表和保存提示。第五种误解是把颜色变化理解成图片主题分析。预览颜色由选中位置决定目的是突出状态变化。第六种误解是把滚动区域理解成支持无限图库。当前只有六个固定项目没有远程数据和分页。把这些事实讲清楚比使用听起来更强大的产品术语更有价值。十五、如果把它作为真实图库的起点当前页面适合作为真实图库前的交互骨架。它已经表达了最基本的选择逻辑内容列表、当前项、预览区域和喜欢按钮之间如何产生反馈。未来如果加入真实图片首先需要让每个名称对应图片资源并在缩略图和预览区域分别承担不同尺寸的显示职责。但那属于新增能力不是当前页面已经具备的功能。如果加入系统图库读取还需要处理授权、读取失败、空相册、图片格式和加载状态。当前页面没有这些状态因此不能用它证明系统图库权限和文件访问已经完成。如果加入收藏保存需要确定保存位置、页面重启后的恢复方式和每张图片的独立标记。当前的单个喜欢状态也不能直接等价于完整收藏模型。如果加入远程相册还需要处理网络等待、缓存、断网和数据分页。当前页面没有请求过程切换名称也不产生网络活动。未来扩展时可以保留现在的视觉结构再逐步替换数据来源但必须重新设计状态数量和失败反馈不能只把文字列表替换成网络接口就宣称功能完整。十六、适合初学者观察的 ArkUI 思路这个页面非常适合用来理解声明式界面。页面不是先找到某个文本节点再修改它而是保存“当前选择是什么”“喜欢是否打开”这两个状态然后根据状态描述应该显示的内容。当用户点击缩略图时选择状态改变相关区域自然呈现新结果当用户点击按钮时喜欢状态改变按钮文本自然呈现新结果。列表中的每一项都使用相同的结构生成数字块、照片名称、间距和点击区域。统一结构减少了六份重复布局之间的不一致。列表项只需要把自己的位置传给选择状态页面就能判断它是否应该使用高亮背景。这种写法让数据和视图建立了稳定的对应关系。页面还展示了布局容器之间的分工。横向容器适合标题和按钮同行纵向容器适合组织标题、预览、列表滚动容器负责承载较长内容可换行容器负责安排网格。理解每个容器解决的问题比记住某个属性名称更重要。十七、一次完整的自主操作记录可以按下面的顺序体验页面但每一步的意义都来自页面实际可见变化。先打开页面确认标题和照片数量。接着观察预览卡片记住它的名称和颜色。然后点击“城市夜景”确认第二个数字块高亮预览文字同步变化。继续点击“海边清晨”确认选择可以直接跳到列表末项。在末项保持选中时点击喜欢按钮观察按钮变为“♥ 已喜欢”。此时不要离开页面向下滚动查看网格再回到预览区域确认选中状态和喜欢状态仍然保持。然后再次点击喜欢按钮观察它恢复为“♡ 喜欢”。最后选择“咖啡时光”确认撤销喜欢不会妨碍再次选择。这组操作覆盖了初始状态、任意选择、末项选择、喜欢开启、滚动承载、喜欢关闭和再次选择。它不需要额外账号不需要输入内容也不需要准备外部图片。体验过程中如果看到数字、名称、颜色和按钮状态都符合上述规则就说明页面的核心交互闭环已经清晰呈现。十八、页面没有做什么为了准确理解页面还需要明确它没有做的事情。它没有导入照片没有调用系统相册没有创建相册目录没有删除项目没有编辑图片没有放大缩小真实画面也没有提供滑动切换手势。它没有保存喜欢结果也没有显示收藏总数没有与其他设备同步。它没有从网络加载照片没有显示下载进度没有处理断网也没有把“2026 年夏”计算成当前日期。它没有根据真实图片颜色改变预览背景也没有根据照片属性生成标签。它没有分页、搜索、排序和筛选。所有这些边界都来自页面目前的可见结构文章不应通过泛化的产品描述把它们隐去。说清楚未实现能力并不是否定页面而是让读者知道页面真正展示的价值。这个页面的价值在于把一个相册首页最核心的视觉关系做得清楚六个内容入口、一个当前预览、一个喜欢开关、一次点击即可得到反馈。围绕这四点展开文章会比堆砌图库术语更真实。十九、总结一个轻量但完整的画廊交互这个图片画廊页面用六个固定名称构成内容列表用一个选择位置维护当前预览用一个喜欢状态维护按钮文案。顶部标题和数量提供上下文预览卡片提供当前内容缩略图网格提供切换入口喜欢按钮提供独立的即时反馈。用户无需跳转页面就能完成查看、切换和标记三个动作。它的重点不是展示真实照片而是把“选择后看见结果”这件事做得明确。选择一个缩略图名称、卡片颜色和选中颜色一起变化点击喜欢按钮文字和心形符号变化滚动页面状态继续保留。这些反馈形成了易于理解的闭环也体现了状态驱动界面的基本思路。阅读这个页面时最值得带走的经验是先明确内容模型再决定页面状态先让核心动作可见再考虑扩展功能。当前模型只有六个名称所以页面不需要复杂的数据层当前动作只有选择和喜欢所以状态职责可以保持独立当前内容规模很小所以固定网格和普通滚动已经足够。如果将来继续扩展应该从真实需求出发增加资源读取、授权、收藏持久化或远程数据而不是把尚未实现的能力写进现状。保持页面实际行为、文章描述和用户看到的结果一致才能让这类 ArkUI 示例真正具备参考价值。二十、从用户视角看一次点击的价值画廊页面里的每一次点击都应该让用户马上知道发生了什么。点击第一个缩略图时虽然它本来就是当前项页面仍然保持相同的预览标题和选中样式不会因为重复点击而出现额外提示点击其他缩略图时变化则集中在当前标题、卡片颜色和高亮位置上。这样的行为让重复操作也保持稳定不会因为偶然多点一次而跳转到陌生页面。用户在网格中寻找内容时通常先扫视数字再看名称最后根据颜色确认当前项。数字块面积较大适合快速定位名称放在数字下面适合确认语义颜色提供选中结果的补充证据。三个层次不需要用户先学习复杂图标进入页面后就能逐渐形成操作习惯。对于相册这种以浏览为主的页面来说减少认知负担比增加更多按钮更重要。喜欢按钮的反馈也遵循同一原则。用户点击前看到空心心形和“喜欢”点击后看到实心心形和“已喜欢”两种状态在文字和符号上同时变化。若用户想取消标记再次点击即可回到原状态不需要打开设置菜单。按钮没有将操作结果放到页面底部也没有弹出短暂提示因此用户的视线始终停留在当前预览卡片附近。二十一、页面结构对后续维护的帮助页面的内容、选择和喜欢分别处在清楚的职责范围内后续维护时更容易判断改动会影响哪里。如果只调整六个名称顶部数量、缩略图文字和预览标题仍然会随着同一组内容变化如果只调整喜欢按钮的样式选择位置和网格高亮不会被牵连如果只调整背景颜色用户操作顺序也不会变化。这种影响范围可预期的结构适合继续做视觉微调。布局中的固定数值也服务于一致性。预览卡片的高度保证当前标题、说明和按钮拥有相对稳定的空间缩略图块的宽高让六个条目在换行后仍然保持相近的形状统一间距避免某个名称因为长度略有不同就挤到相邻区域。当前名称长度接近页面因此显得整齐。如果后续加入很长的名称就需要重新观察换行和截断效果而不能假设现有尺寸永远足够。从维护角度看页面还没有把图片对象、文件信息和业务记录混杂在一起。六个内容只承担展示标签的作用选择只承担位置关系喜欢只承担开关反馈。未来如果增加真实资源应先建立清晰的数据结构再决定缩略图和预览各自使用哪些字段。保持这些职责分离可以避免一个界面变量同时承担文件读取、收藏保存和视觉选中等多个含义。二十二、适合继续观察的几个细节观察页面时可以注意标题数量和网格项目的对应关系。当前数量显示六张照片网格也有六个名称选择变化只改变当前内容不影响数量。这种“总量稳定、当前项变化”的关系非常适合展示列表页面的常见状态模型。也可以观察标题行与滚动内容的关系标题行提供固定上下文预览和网格承担主要浏览内容两者在视觉上连成一页。还可以连续点击顺序不相邻的项目例如从第一项跳到第六项再回到第三项。每次切换都不需要经过中间项最终预览直接指向最后一次点击的名称网格高亮也只保留最后的选中位置。这个结果说明选择动作是直接赋值而不是播放一个固定的前进流程。它对于画廊、联系人选择和分类入口等页面都有参考意义。最后可以在喜欢按钮已经打开时继续切换缩略图观察按钮仍然保持“已喜欢”。这个现象帮助理解页面级喜欢开关与选择位置的独立关系也提醒开发者在设计真实收藏功能时要先确定喜欢是针对页面还是针对每个内容项。当前页面选择的是更简单的页面级反馈因此文章不会把它解释成六张照片各自拥有收藏状态。