通知系统
在各种各样的游戏、应用中都有。
相信大家都看过 win10 的通知消息,在游戏中,我们获得 xx 道具、达成 xx 成就、或是做了 xx 事情需要通知给玩家,这些都可以看作是通知。
# 通知系统的特点
通知系统具备以下特点:
- 时效性:每一个通知就像一条讯息,存在
存活时间
,死亡后就应该从屏幕空间消失。 - 排列性:按照先来先服务原则,很有可能上一条讯息还处于存活时间,就来了很多条新讯息,此时新讯息不应该抢占当前讯息的存活时间,而是在等待讯息死亡后再按照排列进行数据显示。
- 置顶性:通知系统应该具备较高的
显示优先级
,即不该被基础元素遮挡。 - 显示层:以上几点均为逻辑设计,一般来说,通知系统显示新消息时会将旧消息
顶
上去。
依据以上特点我们可以这样考虑:
# 时效性
自消息显示时开始记录时效,在指定时间后 杀死消息
。
# 排列性
遵循先来先服务的原则,我们可以使用一个队列结构对等待消息进行缓存。在显示消息时将消息从队列中移除。