简要总结
Menu Bar Icon
这页说明书是讲电脑屏幕右上角那个小动物图标的故事。它会像小动物一样动来动去,告诉我们电脑里的“小助手”正在做什么。比如,它什么时候在睡觉,什么时候在听你说话,什么时候在帮你干活。这是给做这个图标的大人看的,让他们知道怎么让图标做出正确的动作。
五岁小孩版解释
屏幕右上角的小动物图标,就像一只小宠物,会用不同的样子告诉我们它正在干嘛。我们来看看它有哪几种样子,以及怎么让它变样子。
图标的不同状态
- 休息状态 (Idle):这是它平常的样子。它会慢慢地眨眼睛,偶尔轻轻地扭一扭身体,就像一只在发呆的小动物。
- 暂停状态 (Paused):这时候它看起来灰灰的,不会动。就像玩具没电了一样。这是通过一个叫
appearsDisabled的设置实现的。 - 听声音状态 (Voice trigger):当它听到你叫它的“魔法词”时,就会竖起大耳朵!耳朵会变大(变成原来的1.9倍大),耳朵中间还会出现圆圆的洞,这样更容易看清楚。等你不说话安静1秒钟后,大耳朵才会放下来。
- 怎么让它竖起耳朵:当听到“魔法词”时,需要调用
AppState.triggerVoiceEars(ttl: nil)这个方法。 - 怎么让它放下耳朵:安静1秒后,需要调用
stopVoiceEars()这个方法。 - 要小心:这个状态只有电脑里的小助手自己可以控制,别的地方不能乱按开关。
- 怎么让它竖起耳朵:当听到“魔法词”时,需要调用
- 工作状态 (Working):当小助手在帮你干活(比如和网页聊天)时,图标会进入“忙碌模式”。它的腿会飞快地倒腾,做出小跑的动作,身体也会微微晃动。这是通过把
AppState.isWorking设置成true来实现的。
怎么控制图标的变化
想让图标变样子,你需要告诉它两个地方:
- 控制大耳朵:
- 当听到“魔法词”时,立刻告诉它:
AppState.triggerVoiceEars(ttl: nil)。 - 当你停止说话,安静了1秒钟后,再告诉它:
stopVoiceEars()。
- 当听到“魔法词”时,立刻告诉它:
- 控制忙碌的小跑:
- 当小助手开始长时间工作时(比如和网页聊天),把工作状态设为“真”:
AppStateStore.shared.setWorking(true)。 - 当工作做完时,一定要记得把它设回“假”:
AppStateStore.shared.setWorking(false)。 - 要小心:工作状态要保持很短的时间,做完事要立刻关掉,不然图标会一直跑个不停,停不下来。
- 当小助手开始长时间工作时(比如和网页聊天),把工作状态设为“真”:
关于图标的样子和大小
- 图标是用一个叫
CritterIconRenderer.makeIcon的工具画出来的,可以控制它眨眼、扭腿、扭耳朵、耳朵大小和有没有耳洞。 - 平常耳朵大小是
1.0。听声音时,耳朵会变大到1.9,并且打开耳洞 (earHoles=true)。 - 小跑的动作是在扭腿的基础上,让腿动得更快,再加上一点点左右的摇晃。
最后的重要提醒
- 大耳朵和忙碌状态只能由电脑里的小助手自己控制,没有外部的开关。这是为了防止图标自己乱动。
- 如果你设置了计时(比如TTL),时间一定要短(小于10秒)。这样万一有工作卡住了,图标也能很快变回平常的样子,不会一直卡在奇怪的状态。