列表中的单项编辑,如何设计才不会破坏浏览节奏

2026年4月6日
研学小组
研学小组
美叶研学官方内容开发小组
已累计原创 86 篇文章查看全部

设计师 @nitishkmrk 在 X 上发布了一个列表编辑的交互方案。一张支出记录表,每行显示支出类别、支付方式和金额,右侧有一个编辑按钮。用户点击编辑后,这一行就地展开成表单,三个字段从横向排列变成纵向排列,每个字段变成可输入的状态。与此同时,列表里其他内容变淡,但不消失。用户填完后点 Done,表单收回,列表恢复原状。

整个编辑过程没有弹窗,没有页面跳转,也没有遮罩层。编辑像是从列表里长出来的,改完又收回去了。

这个方案值得拆解的地方,并不是酷炫的动画,而在于它处理了一个列表编辑场景里的问题:用户在修改一条数据时,需不需要知道其他数据长什么样?如果需要,那把编辑转场到另一个地方,就意味着用户需要在大脑中记住上下文。而这个方案的精妙之处在于,让编辑发生在原地,让上下文待在视野里。


一. 设计拆解

1. 编辑发生在行的位置,不另开空间

列表编辑最常见的两种做法是弹窗和跳转到详情页。弹窗会在列表上方叠一层新界面,用户的视线从列表移到弹窗,列表被遮住一部分甚至全部。跳转则直接把列表从视野里移走,用户改完再跳回来。这两种做法都能完成编辑任务,但都让用户在编辑过程中失去了对列表的感知。

这个方案把表单放在被编辑行的原始位置,用户的视线不需要跳到别处。编辑的对象就在那一行,编辑的表单也出现在那一行,位置不变,向用户很好的诠释了"你在改的正是这条数据"。

2. 表格的列变成表单的行

列表状态下,Expense、Method、Amount 三个字段横向排列在一行里,每个字段只占一列的宽度。进入编辑状态后,这三个字段变成纵向排列,每个字段独占一行,旁边配上对应的标签和图标。

这个转换解决的是空间问题。列表里一行要同时显示三个字段的值,每个字段的空间被压缩到刚够展示内容。编辑时,用户需要点进输入框、修改文字、检查修改结果,每个字段都需要比展示态更大的操作区域。如果编辑时还保持横向排列,输入框会被挤得很窄,这样用户在一个很窄的输入框里修改内容的体验会明显变差。纵向排列能让每个字段获得整行的填写宽度,输入框有足够的空间容纳内容,这样,用户就不需要在一个狭小的区域里来回拖动光标。同时,标签和输入框上下对齐,字段之间的视觉间距也更为充裕,用户不容易改错行。

会员文章
开通美叶 Pro会员,即可阅读此篇文章的全部内容,同时可阅读全站会员文章

0 人收藏了本文

从阅读反馈到状态过渡,拆解灵动岛进度方案的设计逻辑从阅读反馈到状态过渡,拆解灵动岛进度方案的设计逻辑
信息补全而不是信息堆叠,一个状态栏交互的启发信息补全而不是信息堆叠,一个状态栏交互的启发
这个看起来很简单的工具栏,其实藏着一套高级交互思路这个看起来很简单的工具栏,其实藏着一套高级交互思路
把参数调节变成结果预览,这个设计很友好把参数调节变成结果预览,这个设计很友好
从确认到连续调节,音量控件的两种观看密度从确认到连续调节,音量控件的两种观看密度
花瓣采集按钮,妙在克制花瓣采集按钮,妙在克制
亮点:长按加速删除文字亮点:长按加速删除文字