首页
/ Tusky客户端中过滤通知的交互设计优化方案

Tusky客户端中过滤通知的交互设计优化方案

2025-06-30 11:09:25作者:尤辰城Agatha

背景介绍

Tusky作为一款开源的Mastodon客户端,正在考虑如何优雅地实现Mastodon新增的"过滤通知"功能。该功能允许用户设置条件来过滤不希望直接显示的通知,如来自特定用户或包含特定关键词的通知。

现有方案的问题分析

当前Mastodon网页版将过滤通知以大卡片形式固定在通知列表顶部,这种设计存在明显缺陷:

  1. 视觉权重失衡 - 过滤通知获得了比普通通知更突出的显示位置
  2. 交互逻辑矛盾 - 被过滤的内容本应降低优先级,却占据了更显眼的位置
  3. 用户体验不佳 - 用户需要频繁处理这些本应被过滤的内容

创新设计方案

我们提出了一种"内联显示"的交互方案:

核心设计原则

  • 平等性原则:过滤通知与普通通知享有相同的视觉权重
  • 渐进式披露:用户可按需展开查看被过滤内容
  • 即时操作:提供快捷操作入口处理过滤规则

具体实现细节

  1. 基础显示层

    • 在通知流中原位显示过滤通知
    • 使用黄色背景作为视觉提示(类似网页版对私密提及使用蓝色背景的方案)
    • 显示发送者信息及"显示/隐藏"操作按钮
  2. 展开状态

    • 用户点击"显示"后完整展示通知内容
    • 提供"永久屏蔽该用户"和"允许该用户通知"的快捷操作
    • 这些操作对应网页版中的"复选框"和"静音"按钮功能
  3. 增强交互

    • 可添加"?"图标解释过滤原因
    • "隐藏"操作可触发二次确认对话框
    • 设置中可添加"永不显示过滤通知"的全局选项

技术考量

实现此方案可能需要Mastodon API的以下支持:

  1. 合并通知和过滤通知的数据流
  2. 获取过滤原因详情(当前API可能未提供)
  3. 支持单次隐藏操作(不触发永久规则)

方案优势

相比网页版方案,本设计具有以下优点:

  1. 符合心智模型:被过滤内容不应获得额外关注
  2. 操作路径更短:用户可在上下文中直接处理
  3. 视觉干扰更少:避免突兀的大卡片打断浏览流
  4. 灵活性更高:支持渐进式披露和多种操作选项

总结

这种内联显示方案通过重新思考过滤通知的本质属性,创造了一种更符合用户心理预期的交互模式。它不仅解决了当前网页版设计的问题,还通过精心设计的细节提升了整体用户体验。该方案展示了Tusky客户端在创新交互设计方面的潜力,有望成为Mastodon生态中的最佳实践。

登录后查看全文
热门项目推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
178
262
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
868
514
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
130
183
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
272
311
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
398
373
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
83
4
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
599
58
GitNextGitNext
基于可以运行在OpenHarmony的git,提供git客户端操作能力
ArkTS
10
3